LINUX.ORG.RU

Bootsplash на linux-3.14.хх

 , ,


0

1

Собственно вопрос вот в чем, с версии 3.10 из библиотек были убраны некоторые структуры, в частности create_proc_entry, из-за этого патч не работает, т.к. в С я нуб прошу помощи у знающих.

Вот кусок на который ругается компилятор, говорит что неявная декларация create_proc_entry,

static int splash_proc_register(void)
{
	if ((proc_splash = create_proc_entry("splash", 0, 0))) {
		proc_splash->read_proc = splash_read_proc;
		proc_splash->write_proc = splash_write_proc;
		return 0;
	}
	return 1;
}

Гугль выдает примеры как это пофиксить, но что-то никак... I need help!

Ответ на: комментарий от ymn

да, на это примерно гугль и ссылается. Вот только опыту в С у меня ноль, и как грамотно исправить файл я не представляю. Если надо есть исходник, куда загрузить только не знаю. Объясните популярно, что я должен сделать, учебник есть, разберусь надеюсь.

Gramozeka ★★
() автор топика
Ответ на: комментарий от Gramozeka

Не так чтобы я был в теме, но, если делать по примеру, то как-то так:

static int splash_proc_register(void)
{
    static const struct file_operations proc_file_fops = {
        .owner = THIS_MODULE,
        .read  = splash_read_proc,
        .write = splash_write_proc,
    };

    if ((proc_splash = proc_create("splash", 0, NULL, &proc_file_fops))) {
        return 0;
    }
    return 1;
}

Может ещё надо поменять тип proc_splash на struct proc_dir_entry *.

xaizek ★★★★★
()
Ответ на: комментарий от xaizek

отвлекли малость. Сейчас попробую. Делал подобно, но компилятор ругнулся на .read = splash_read_proc, доступ к указателю неполного типа, ну или типа того...

Gramozeka ★★
() автор топика
Ответ на: комментарий от Gramozeka

Может file_operations в отдельном заголовочном файле и нужен #include, или сигнатура функций поменялась.

Я просто без исходников и того и другого, если не выйдет, то скачаю и гляну, что там с типами. Кстати, можно найти коммит ядра, который меняет интерфейс, там же будут примеры перевода старого кода на новый лад.

xaizek ★★★★★
()
Ответ на: комментарий от xaizek

спасибо дорогой товарищ, всё собралось, один хрен не работает, видимо проблема где-то глубже, но конкретно эта проблема отпала, так что можно считать решёно.

Gramozeka ★★
() автор топика
Ответ на: комментарий от xaizek

исходники самого патча сдесь я использовал 3.8.0. Там проблема в одном месте, fbcon.c пришлось вручную допинывать, patch не видит одно место в упор, но остальное вроде всё нормально ложится. Ядро 3.14.16. Если подскажешь что можно исправить буду очень признателен. Пока медитирую над учебником и исходниками, надежд практически никаких, но пока мозг не вскипит покурю..

Gramozeka ★★
() автор топика
Последнее исправление: Gramozeka (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.