Menu

Проблемы с хвостами и сжатием

BratSinot
2016-09-24
2016-10-14
  • BratSinot

    BratSinot - 2016-09-24

    Доброго времени суток!

    В общем использую Bittorrent клиент (qBittorrent, построенный на libtorrent). Если коротко, то его структура такова, что все файлы представляются как один большой массив и разбиваются на определенные блоки, соотвественно в одном блоке может быть несколько файлов, а когда выбираются не все файлы, то скачанные блоки содержат и куски невыбранных файлов. В qBittorrent это выглядит как создание дирректории .unwanted, в которой содержатся невыбранные файлы, но т.к. в блоках есть части этих файлов, клиент их создает и эти части туда записывает.
    Короче говоря, при некоторых действиях перестает работать ввод/вывод, причем система не крашится сразу. Программы и данные которые уже в памяти работают исправно, а "виснут" только при обращении с диском. dmesg выдает нечто подобное:

    Sep 24 02:46:22 lBratSinot kernel: [ 1867.353306] BUG: unable to handle kernel NULL pointer dereference at 0000000000000010
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.353419] IP: [<ffffffff812696da>] internal_at+0xa/0x30
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.353453] PGD 5744e067 PUD 5744f067 PMD 0 
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.353486] Oops: 0000 [#1] SMP
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.353503] Modules linked in: ipv6 bnep zram zsmalloc fuse ath9k ath9k_common ath9k_hw uvcvideo ath mac80211 videobuf2_vmalloc videobuf2_memops videobuf2_v4l2 videobuf2_core btusb btrtl cfg80211 btbcm btintel bluetooth snd_hda_codec_hdmi snd_hda_codec_realtek snd_hda_codec_generic snd_hda_intel videodev acer_wmi joydev sparse_keymap i2c_dev coretemp intel_powerclamp snd_hda_codec snd_hda_core snd_hwdep snd_pcm snd_timer radeon rfkill snd kvm_intel kvm ttm drm_kms_helper syscopyarea sysfillrect irqbypass soundcore sysimgblt fb_sys_fops drm broadcom bcm_phy_lib crc32c_intel mei_me tg3 mei ptp pps_core libphy hwmon psmouse i2c_i801 evdev serio_raw lpc_ich ehci_pci ehci_hcd thermal wmi intel_agp intel_gtt battery ac agpgart video button fjes acpi_cpufreq tpm_tis tpm loop
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.354075] CPU: 2 PID: 1449 Comm: qbittorrent Not tainted 4.7.2-ck2 #1
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.354105] Hardware name: Acer            Aspire 5740                    /Aspire 5740                    , BIOS V1.28           08/12/2010
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.354158] task: ffff88005eac3d80 ti: ffff88005dd1c000 task.ti: ffff88005dd1c000
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.354191] RIP: 0010:[<ffffffff812696da>]  [<ffffffff812696da>] internal_at+0xa/0x30
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.354229] RSP: 0018:ffff88005dd1f8c8  EFLAGS: 00010246
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.354254] RAX: 00000000000003a8 RBX: ffff88005dd1f938 RCX: ffffffff81c4ba40
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.354285] RDX: ffff880080213300 RSI: ffff88005dd1f938 RDI: 0000000000000000
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.354317] RBP: ffff88005dd1f8d0 R08: 0000000000000000 R09: 0000000000000000
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.354348] R10: ffffffff8125c880 R11: 0000000000000000 R12: ffff8800a4ce4f20
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.354379] R13: ffff88005dd1faa0 R14: 0000000000000001 R15: 0000000000000000
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.354410] FS:  00007efc2339d700(0000) GS:ffff8800baf00000(0000) knlGS:0000000000000000
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.354445] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.354471] CR2: 0000000000000010 CR3: 0000000057451000 CR4: 00000000000006e0
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.354502] Stack:
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.354513]  ffff88005dd1f938 ffff88005dd1f8e8 ffffffff81269862 ffff880080213300
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.354555]  ffff88005dd1f998 ffffffff8125de36 ffff88005dd1f938 0000000000000001
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.354598]  ffff880080213310 0000000000000000 0000000003160474 0153686967617473
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.354641] Call Trace:
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.354657]  [<ffffffff81269862>] has_pointer_to_internal+0x12/0x30
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.354687]  [<ffffffff8125de36>] find_disk_cluster+0x186/0x380
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.354715]  [<ffffffff8126b8cd>] do_readpage_ctail+0x23d/0x4a0
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.354743]  [<ffffffff8125e1c3>] ? prepare_page_cluster+0x103/0x1e0
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.354772]  [<ffffffff8126bc60>] ctail_readpages_filler+0x130/0x250
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.354803]  [<ffffffff81161c48>] read_cache_pages+0xa8/0x150
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.354829]  [<ffffffff8126bb30>] ? do_readpage_ctail+0x4a0/0x4a0
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.354856]  [<ffffffff8126bfda>] readpages_ctail+0x12a/0x330
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.354883]  [<ffffffff812601ee>] readpages_cryptcompress+0x3e/0x70
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.354913]  [<ffffffff8124bf66>] reiser4_readpages_dispatch+0x36/0x40
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.354943]  [<ffffffff81161e6b>] __do_page_cache_readahead+0x17b/0x230
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.354973]  [<ffffffff81161fee>] ondemand_readahead+0xce/0x250
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.355002]  [<ffffffff81351c33>] ? radix_tree_lookup_slot+0x13/0x30
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.355031]  [<ffffffff811621db>] page_cache_async_readahead+0x6b/0x70
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.355063]  [<ffffffff811560f9>] generic_file_read_iter+0x489/0x740
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.355094]  [<ffffffff811b3bb8>] do_iter_readv_writev+0xa8/0x120
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.355121]  [<ffffffff8125ac10>] ? reiser4_open_dispatch+0x120/0x120
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.355151]  [<ffffffff811b4d58>] do_readv_writev+0x168/0x210
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.355178]  [<ffffffff81325a0c>] ? blk_finish_plug+0x2c/0x40
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.355206]  [<ffffffff81195f92>] ? SyS_madvise+0x422/0x6d0
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.355232]  [<ffffffff811b4e39>] vfs_readv+0x39/0x50
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.356678]  [<ffffffff811b4ea2>] do_readv+0x52/0xd0
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.358113]  [<ffffffff811d1de1>] ? __fdget_pos+0x41/0x50
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.359538]  [<ffffffff811b6110>] SyS_readv+0x10/0x20
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.360963]  [<ffffffff816b419b>] entry_SYSCALL_64_fastpath+0x13/0x8f
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.362332] Code: 00 66 66 66 66 90 55 41 b8 01 00 00 00 31 c9 48 89 f2 48 89 e5 e8 97 f6 fc ff 5d c3 0f 1f 44 00 00 66 66 66 66 90 55 48 89 e5 53 <83> 7f 10 ff 48 89 fb 74 0b 48 89 df e8 e5 7a 00 00 5b 5d c3 e8 
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.365583] RIP  [<ffffffff812696da>] internal_at+0xa/0x30
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.367065]  RSP <ffff88005dd1f8c8>
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.368499] CR2: 0000000000000010
    Sep 24 02:46:22 lBratSinot kernel: [ 1867.375895] ---[ end trace f80a40b40075e2bb ]---
    

    Из нестандартного при монтировании использую "noatime,nodirtime", в качестве IO планировщика BFQ.

     

    Related

    Tickets: #1

  • Edward Shishkin

    Edward Shishkin - 2016-09-24

    Добрый день!

    Давайте начнём с проверки раздела утилитой fsck. Cообщите потом о результате.
    С ув.,
    Эдуард.

     
  • Edward Shishkin

    Edward Shishkin - 2016-09-25

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

     
  • BratSinot

    BratSinot - 2016-10-07

    Виноват что так долго, времени небыло. fsck, как и ожидалось, выдает ошибки связанные с ccreg40.

    Насчет проблем с определенным торрентом, это наврядли. Имел место стандартный BitTorrent, с размером блока 4MiB. 22 файла 300-360MiB.
    Насчет выделения места под весь файл, сейчас не вспомню. Вроде было выключено.

    Попробую еще раз воспроизвести проблему. Может попробую другие операции с мелкими файлами.

     

    Last edit: BratSinot 2016-10-07
  • Edward Shishkin

    Edward Shishkin - 2016-10-07

    Ну, торрент может быть и не при чём: он спотыкался о повреждённый раздел.
    Выделение места у нас пока не поддерживается (некому реализовывать). Так что, включай его, или не включай - это будет одно и то же. По возможности, периодически чекайте раздел fsck-ем, т.к. это повреждение из разряда "тихих". У меня ещё просьба сразу приложить вот этот патч (с опцией -p1, зайдя в директорию fs/reiser4). Он выключает большую часть кода. На функциональности сказаться не должно, но производительность слегка просядет. Спасибо!

     
  • BratSinot

    BratSinot - 2016-10-08

    И тогда вопрос, можно ли fsck запускать в init 1 и mount -o remount,ro /, дабы каждый раз с LiveCD не грузиться.

     
  • Edward Shishkin

    Edward Shishkin - 2016-10-08

    Проверять можно вроде и партицию, смонтированную ro.
    Только reiser4 remount не поймёт. Если у вас рутовый раздел,
    попробуйте передать опцию ro загрузчику.

     
  • BratSinot

    BratSinot - 2016-10-14

    В общем с этим патчем он, судя по всему, не может прочитать файлы с раздела. Т.е. раздел смонтировался, но ругается на "неправильный" init.
    Собрал без этого патча все работает.

     

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.