LINUX.ORG.RU

Сообщения UVV

 

Передача параметров в конструктор

Форум — Development

Как лучше?

Как раньше: MyClassCtor(const DataType& value) : mValue(value)

или так: MyClassCtor(DataType value) : mValue(std::move(value))

?

Вангую анонима, который расскажем мне, куда нужно идти..

 

UVV
()

Сортировка по последнему сообщению.

Форум — Linux-org-ru

Допустим сейчас в разделе job были комментарии в прикреплённой теме. Если включить сортировку по последнему комментарию, то этой темы не видно. Имхо, баг.

 

UVV
()

qtcreator и add_custom_target в cmake

Форум — Development

Есть в CMakeLists.txt такая конфигурация:

add_custom_command(
   OUTPUT MyFile.c
   COMMAND blabla
)

set(my_SOURCES
    MyFile.c
)

add_library(mylib ${my_SOURCES})

Всё генерируется и собирается, но сгенерированные файлы не отображаются в QtCreator'e. Можно их как-то отобразить? (версия creator'a 3.5.1)

 ,

UVV
()

Как добавить пакет в meta-toolchain, но не в sysroot

Форум — Development

Собсно вопрос в заголовке. Можно ли это как-то сделать через conf/local.conf, если toolchain собирается командой bitbake meta-toolchain?

Пробовал вот так:

TOOLCHAIN_HOST_TASK_append = " nativesdk-glib-2.0-codegen"
не помогло

 ,

UVV
()

Структура в dbus и gdbus-codegen

Форум — Development
		<signal name="finished">
			<arg name="status" type="(ssiyi)">
				<annotation name="org.gtk.GDBus.C.Name" value="TaskStatus"/> <--- ???
			</arg>
			<annotation name="org.qtproject.QtDBus.QtTypeName.In0" value="TaskStatus"/>
		</signal>

Если убрать все аннотации, то код не генерируется ни при помощи qdbusxml2cpp, ни при помощи gdbus-codegen. Если добавить вторую аннотацию (QtTypeName), то qdbusxml2cpp съедает и генерирует. Что нужно сделать, чтобы gdbus-codegen сгенерировал код? Вообще то, что он даже сообщение об ошибке не выдаёт, я считаю это багом. Надо бы запостить. Только сначала хотелось понять, как заставить его генерировать.

 

UVV
()

vector и multithreading

Форум — Development

Короче такой use-case:

- std::vector<std::shared_ptr<MyStruct>>
- Один тред пишет и удаляет
- Другой только читает и делает std::find_if

MySctruct разруливает многопоточность сама через std::atomic и std::mutex. Вопрос касательно вектора. В таком сценарии нормально использовать его или нужно наследоваться и защищать мьютексом?

UPD.: по ходу, если кто-то пишет, то читать остальным нельзя давать. Правильный ход мыслей?

 ,

UVV
()

Slackware 14.2 stable

Новости — Slackware
Группа Slackware

После долгих 26 месяцев разработки вышла долгожданная Slackware 14.2.

Основные нововведения:

  • ядро Linux версии 4.4.14;
  • glibc 2.23;
  • gcc 5.3.0;
  • KDE 4.14.x;
  • добавлена поддержка PulseAudio;
  • udev заменён на eudev, а Consolekit — на Consolekit2 (чтобы избежать перехода на systemd в этом цикле разработки).

>>> Официальный анонс

>>> Ссылки для скачивания

 

UVV
()

А как ты ЛОРконь(овца) поддерживаешь любимую систему?

Форум — Talks

Я вот купил футболку Slackware только что =)

Кстати, кто про баг-репорты и патчи отметился, неплохо было бы уточнить в какие проекты.

 

UVV
()

Зарезервировать память на ARM размером меньше 0x100000

Форум — Development

Резервирую я вот таким способом через device tree.

Если указываю размер 0x100000 то резервируется нормально и всё работает пучком. Попробовали мы как-то зарезервировать 0x1000 или 0x10000. И вот тут начинается интересное. Ядро резервирует запрошенную память (во всех случаях адрес был 0x10000000) и висит в функции void __init map_lowmem(void) (arch/arm/mm/mmu.c).

Никто не в курсе, с чем связана невозможность резервирования памяти небольшого размера? Вроде бы и 0x1000 и 0x10000 больше PAGE_SIZE, с этим проблем быть не должно..

 , ,

UVV
()

А что ты, ЛОРовец, учил в школе о WW2?

Форум — Talks

Я вот тут чё-то подсел и читаю о том, что рассказывают в разных странах. https://www.reddit.com/r/AskReddit/comments/4pfnig/germans_japanese_and_itali...

Я лично вот не помню, чтобы у нас была подчёркнута роль союзников в войне. Про русско-финскую войну тоже не особо рассказывали...

 ,

UVV
()

Посещает ли лоровец linuxcon?

Форум — Talks

На сабже был кто-нибудь? http://events.linuxfoundation.org/events/linuxcon-europe/program/about

Есть просто ещё вот такая http://events.linuxfoundation.org/events/embedded-linux-conference-europe/pro... , но первая выглядит интереснее.

Афигеть, почти час и ни одного коммента.. видать лоровец существо асоциальное :(

 , ,

UVV
()

Посоветуйте сервис, цветы на дом заказать.

Форум — Talks

Ну так чтобы букет и такой как на картинке =) Посмотрел на https://www.florist.ru/ , на картинке одно, а в описании всего 9 цветов и аж 4 килорубля за него.

 ,

UVV
()

Пройтись по контейнерам одного типа

Форум — Development

Есть пару контейнеров, скажем QVector. Как красиво пройтись по всем и выполнить операцию над элементами?

Элементы во всех контейнерах одного типа.

 ,

UVV
()

А как в c++ файл прочитать

Форум — Development

Нашёл красивый бенчмарк здесь http://insanecoding.blogspot.de/2011/11/how-to-read-in-file-in-c.html

Но как быть с неблокирующим чтением.

Единственное, что я вижу, так это напрямую использовать open(mydevice, RD_ONLY | O_NONBLOCK); Больше c++ way вариантов нет? Или правильный путь это вариации select/poll + блокирующее чтение?

 

UVV
()

Закон о резидентстве

Форум — Talks

Лоровцы (и безусловно Лоркони), а кто-нибудь рассматривал вплотную новый закон о резиднетстве? Это касается только тех, кто живёт не в РФ.

Единственное, что смущает, так это вот этот пункт:

По закону граждане России, которые считаются валютными резидентами, не могут проводить ряд операций — скажем, получать на счет доход от продажи недвижимости. Еще пример: физическим лицам запрещено получать на свои иностранные счета гранты. Штрафы за эти нарушения очень серьезные — до 100 процентов от суммы сделки.

А где полный список найти, а также ответ на вопрос «схерали»? Ну, скажем, дом я продавать не буду, но машину в недалёком будущем захочу продать..

 ,

UVV
()

А как это без bind сделать в c++03?

Форум — Development

А то чё-т я затормозил.. в 11-ом сразу написал, а чтоб в 03 ещё собрать..

MyContainer::ConstIterator iter = std::find_if
      (mList.begin(), mList.end(), std::bind(listContains, _1, value));

 

UVV
()

uboot и ethernet

Форум — Development

У uboot'a есть функция board_eth_init(), которая вызывается (как понятно из названия) чтобы проинициализировать ethernet. Она вызывается когда первый раз используешь любую сетевую команду (tftp, nfs, ping ..). Проблема в том, что я решил загрузиться с sd карты, и я не вижу, чтобы ethernet инициализировался. Как можно принудительно выполнить инициализацию?

 ,

UVV
()

Есть ли в Праге лоровцы.

Форум — Talks

Ну а то мож по пивку сообразили бы. Мы будем в Праге 24-28 мая.

 

UVV
()

crc32 calculation

Форум — Development

Нашёл вот тут реализацию crc32 для little-endian. Конкретно я думаю выбрать crc32cx.

Есть пара вопросов.
- Нормальная ли реализация или можно как-то ещё оптимизировать?
- У arm, пункт 9.7 есть intrinsics. Какую часть алгоритма подсчёта crc они выполняют? (Ну что б предоставить оптимизированную под arm версию)

 , , ,

UVV
()

Что делать, если кажется, что нашёл баг в ядре..

Форум — Development

.. ну первая версия понятна, проверить свой код.

Теперь о подозрениях:

http://lxr.free-electrons.com/source/drivers/base/dma-mapping.c#L189

Мне кажется, что должно быть наоборот, т.е. проверка на НЕ 0:

if (rc != 0) ...
Потому как dma_declare_coherent_memory возвращает 0 только в случае ошибки. Пруф:
 87 int dma_declare_coherent_memory(struct device *dev, phys_addr_t phys_addr,
 88                                 dma_addr_t device_addr, size_t size, int flags)
 89 {
 90         struct dma_coherent_mem *mem;
 91         int ret;
 92 
 93         ret = dma_init_coherent_memory(phys_addr, device_addr, size, flags,
 94                                        &mem);
 95         if (ret == 0)
 96                 return 0;
 97 
 98         if (dma_assign_coherent_memory(dev, mem) == 0)
 99                 return ret;
100 
101         dma_release_coherent_memory(mem);
102         return 0;
103 }

...

 20 static int dma_init_coherent_memory(phys_addr_t phys_addr, dma_addr_t device_addr,
 21                              size_t size, int flags,
 22                              struct dma_coherent_mem **mem)
 23 {
...
 34         mem_base = ioremap(phys_addr, size);
 35         if (!mem_base)
 36                 goto out;
 37 
 38         dma_mem = kzalloc(sizeof(struct dma_coherent_mem), GFP_KERNEL);
 39         if (!dma_mem)
 40                 goto out;
 41         dma_mem->bitmap = kzalloc(bitmap_size, GFP_KERNEL);
 42         if (!dma_mem->bitmap)
 43                 goto out;
 44 
...
 54         if (flags & DMA_MEMORY_MAP)
 55                 return DMA_MEMORY_MAP;
 56 
 57         return DMA_MEMORY_IO;
 58 
 59 out:
 60         kfree(dma_mem);
 61         if (mem_base)
 62                 iounmap(mem_base);
 63         return 0;
 64 }

Если это действительно баг, то куда постить? cast tailgunner, post-factum

 

UVV
()

RSS подписка на новые темы