[Letux-kernel] Kernel 4.7-rc1

H. Nikolaus Schaller hns at goldelico.com
Wed Jun 1 20:10:32 CEST 2016


Hi Marek,

> Am 01.06.2016 um 13:08 schrieb Belisko Marek <marek.belisko at gmail.com>:
> 
> Hi Nikolaus,
> 
> On Tue, May 31, 2016 at 9:02 PM, H. Nikolaus Schaller <hns at goldelico.com> wrote:
>> Hi all,
>> I have upgraded the Letux kernel to 4.7-rc1.
>> 
>> For the first time an -rc1 merge went through smoothly without the need to resolve any conflicts.
>> 
>> There were only 3 minor fixes when rebasing our feature branches on top of it.
>> 
>> Of course there are still bugs [1]. Some introduced by automatically changed config
>> or others because some APIs might have been changed that are used in our (still) private
>> additions.
>> 
>> Here is the result:
>> 
>> http://git.goldelico.com/?p=gta04-kernel.git;a=shortlog;h=refs/heads/letux-4.7-rc1
>> 
>> Some interesting changes I did see (without further analyses and no guarantee for completeness)
>> * there is a BMC150_I2C driver now
>> * it looks as if we can set a led-trigger to "panic" which could help for debugging
>> 
>> BR,
>> Nikolaus
>> 
>> [1]: booting on GTA04 (OMAP3) quickly stops with a kernel panic in pwrseq_simple / gpiod
>> Pyra (OMAP5) does not show this.
>> 
>> ...
>> [    4.005310] driver_register 'twl4030_wdt'
>> [    4.014648] driver_register 'cpufreq-dt'
>> [    4.033416] driver_register 'omap-cpufreq'
>> [    4.039459] driver_register 'pwrseq_simple'
>> [    4.045166] Unable to handle kernel NULL pointer dereference at virtual address 0000006c
>> [    4.053619] pgd = c0004000
>> [    4.056457] [0000006c] *pgd=00000000
>> [    4.060211] Internal error: Oops: 5 [#1] PREEMPT SMP ARM
>> [    4.065795] Modules linked in:
>> [    4.069000] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 4.7.0-rc1-letux+ #351
>> [    4.076263] Hardware name: Generic OMAP36xx (Flattened Device Tree)
>> [    4.082824] task: dd8b6d80 ti: dd8b8000 task.ti: dd8b8000
>> [    4.088470] PC is at of_gpiochip_find_and_xlate+0x4/0x70
>> [    4.094024] LR is at gpiochip_find+0x3c/0x70
>> [    4.098510] pc : [<c0423570>]    lr : [<c041f348>]    psr: 20000093
>> [    4.098510] sp : dd8b9d50  ip : df9adc20  fp : 00000000
>> [    4.110504] r10: c0a50858  r9 : 00000007  r8 : c042356c
>> [    4.115936] r7 : dd8b9d80  r6 : 60000013  r5 : c0b5efb8  r4 : dda44800
>> [    4.122772] r3 : dda44abc  r2 : 00000000  r1 : dd8b9d80  r0 : 00000000
>> [    4.129608] Flags: nzCv  IRQs off  FIQs on  Mode SVC_32  ISA ARM  Segment none
>> [    4.137145] Control: 10c5387d  Table: 80004019  DAC: 00000051
>> [    4.143157] Process swapper/0 (pid: 1, stack limit = 0xdd8b8218)
>> [    4.149444] Stack: (0xdd8b9d50 to 0xdd8ba000)
>> [    4.153991] 9d40:                                     dda44abc dda44800 c0b5efb8 c041f348
>> [    4.162536] 9d60: dd8b9df4 00000000 dd8b9df8 df9c2940 00000000 c04236ac dd8b9d84 dd8b9dfe
>> [    4.171112] 9d80: dd8b9df4 df9b2cd4 00000002 00000000 00000001 00000000 00000000 00000000
>> [    4.179656] 9da0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
>> [    4.188201] 9dc0: 00000000 00000000 00000000 fffffdfb dd8b9df8 00000000 c0730f08 dda61c10
>> [    4.196746] 9de0: c088c0f6 c0422958 c08e8f80 c0b9b533 ddd75440 00000000 65736572 70672d74
>> [    4.205291] 9e00: 00736f69 70672d74 00736f69 c0246c14 dd8b6d80 00000007 00000001 ddd75440
>> [    4.213867] 9e20: 00000001 dda61c10 dda61c10 c088c0f6 00000007 c0422bd0 ffffffff 00000007
>> [    4.222412] 9e40: ddd75490 dda61c10 c088c0f6 c1364aa4 00000000 c041ecac ddd75480 ddd754d0
>> [    4.230957] 9e60: dda61c10 dda61c00 c0b7dfcc c0593324 c05932d0 dda61c10 c0b7dfcc c0481c08
>> [    4.239501] 9e80: dda61c10 c1364a9c 00000000 c047fce8 00000000 dda61c10 dda61c44 c0b7dfcc
>> [    4.248046] 9ea0: c0b67c60 c0b9e4c0 c0b9e4c0 c047fed8 00000000 c0b7dfcc c047fe50 c047e3b8
>> [    4.256622] 9ec0: dd899aa4 dda3a1d0 c0b7dfcc 00000000 ddd72180 c047f398 c08e2ef2 dd8b7310
>> [    4.265167] 9ee0: 00000000 c0b7dfcc c0a3b71c 00000000 c0a6a668 c0480e28 c04816e0 00000006
>> [    4.273712] 9f00: c0a3b71c c010192c 00000073 dd8b9f28 c0150f40 c03f3694 60000000 ffffffff
>> [    4.282257] 9f20: 00000051 c0b9e4c0 000000b0 df97c1ae 00000000 c01510d4 c0934738 00000006
>> [    4.290802] 9f40: 00000006 c093550c 000000b0 c093550c c0a50834 00000006 c0a5084c 00000006
>> [    4.299377] 9f60: c0a50850 000000b1 c0a6a668 c0b9e4c0 c0b9e4c0 c0a00d78 00000006 00000006
>> [    4.307922] 9f80: 00000000 c0a00598 00000000 c06ced10 00000000 00000000 00000000 00000000
>> [    4.316467] 9fa0: 00000000 c06ced18 00000000 c01070d0 00000000 00000000 00000000 00000000
>> [    4.325012] 9fc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
>> [    4.333557] 9fe0: 00000000 00000000 00000000 00000000 00000013 00000000 01000000 00040040
>> [    4.342132] [<c0423570>] (of_gpiochip_find_and_xlate) from [<c041f348>] (gpiochip_find+0x3c/0x70)
>> [    4.351409] [<c041f348>] (gpiochip_find) from [<c04236ac>] (of_get_named_gpiod_flags+0x70/0x8c)
>> [    4.360504] [<c04236ac>] (of_get_named_gpiod_flags) from [<c0422958>] (gpiod_get_index+0x80/0x22c)
>> [    4.369873] [<c0422958>] (gpiod_get_index) from [<c0422bd0>] (gpiod_get_array+0x60/0xa8)
>> [    4.378326] [<c0422bd0>] (gpiod_get_array) from [<c041ecac>] (devm_gpiod_get_array+0x3c/0x7c)
>> [    4.387237] [<c041ecac>] (devm_gpiod_get_array) from [<c0593324>] (mmc_pwrseq_simple_probe+0x54/0xa8)
>> [    4.396881] [<c0593324>] (mmc_pwrseq_simple_probe) from [<c0481c08>] (platform_drv_probe+0x50/0xa0)
>> [    4.406372] [<c0481c08>] (platform_drv_probe) from [<c047fce8>] (driver_probe_device+0x134/0x29c)
>> [    4.415649] [<c047fce8>] (driver_probe_device) from [<c047fed8>] (__driver_attach+0x88/0xac)
>> [    4.424468] [<c047fed8>] (__driver_attach) from [<c047e3b8>] (bus_for_each_dev+0x6c/0x90)
>> [    4.433013] [<c047e3b8>] (bus_for_each_dev) from [<c047f398>] (bus_add_driver+0xcc/0x1e8)
>> [    4.441589] [<c047f398>] (bus_add_driver) from [<c0480e28>] (driver_register+0xac/0xf4)
>> [    4.449951] [<c0480e28>] (driver_register) from [<c010192c>] (do_one_initcall+0xac/0x154)
>> [    4.458526] [<c010192c>] (do_one_initcall) from [<c0a00d78>] (kernel_init_freeable+0x120/0x1ec)
>> [    4.467620] [<c0a00d78>] (kernel_init_freeable) from [<c06ced18>] (kernel_init+0x8/0x110)
>> [    4.476196] [<c06ced18>] (kernel_init) from [<c01070d0>] (ret_from_fork+0x14/0x24)
>> [    4.484100] Code: e5940000 e8bd4010 eaf892e1 e92d4038 (e590c06c)
> This could be related to tca (led) driver somehow (maybe missing probe
> somewhere?) mmc_pwrseq_simple_probe is using on of tca pins.

I am not sure since it works on the stone age old Openmoko-Beagle-Hybrid (Beagle XM + Openmoko display)
which also has a tca for some fancy LEDs.

But you might still be right, since there is no pwrseq on that board.

I have seen another unexpected bug:

[  453.668121] Division by zero in kernel.
[  453.672180] CPU: 0 PID: 941 Comm: irq/237-tsc2007 Not tainted 4.7.0-rc1-letux+ #353
[  453.680206] Hardware name: Generic OMAP36xx (Flattened Device Tree)
[  453.686798] [<c010f180>] (unwind_backtrace) from [<c010b6d8>] (show_stack+0x10/0x14)
[  453.694946] [<c010b6d8>] (show_stack) from [<c03ec930>] (dump_stack+0x98/0xd0)
[  453.702514] [<c03ec930>] (dump_stack) from [<c03eb3e4>] (Ldiv0+0x8/0x14)
[  453.709564] [<c03eb3e4>] (Ldiv0) from [<bf09f538>] (tsc2007_soft_irq+0x274/0x3b0 [tsc2007])
[  453.718353] [<bf09f538>] (tsc2007_soft_irq [tsc2007]) from [<c018ee3c>] (irq_thread_fn+0x1c/0x34)
[  453.727630] [<c018ee3c>] (irq_thread_fn) from [<c018f0d4>] (irq_thread+0xec/0x1c8)
[  453.735595] [<c018f0d4>] (irq_thread) from [<c015175c>] (kthread+0xd8/0xec)
[  453.742889] [<c015175c>] (kthread) from [<c01070d0>] (ret_from_fork+0x14/0x24)

So at the moment the status is:
* OMAP5EVM: seems to work
* Pyra: seems to work
* PandaBoard: seems to work
* GTA04: kernel panic
* BeagleBoard XM + Panel: div0 error from touch screen

Untested:
* BeagleBone + Panel
* OpenPandora

In general this is quite good for a -rc1.

BR,
Nikolaus



More information about the Letux-kernel mailing list