linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [BISECTED] Regression v4.6-rc1 : nanosleep doesn't return on AT91SAM9
@ 2016-05-10 13:58 Richard Genoud
  2016-05-10 14:25 ` Richard Genoud
  0 siblings, 1 reply; 7+ messages in thread
From: Richard Genoud @ 2016-05-10 13:58 UTC (permalink / raw)
  To: Arnd Bergmann, Nicolas Ferre
  Cc: boris.brezillon, Alexandre Belloni, linux-arm-kernel, linux-kernel

Hi,

Starting with 4.6-rc1, a sleep 1 doesn't return :

execve("/bin/sleep", ["sleep", "1"], ["USER=root", "SHLVL=1",
"OLDPWD=/var", "HOME=/", "TERM=vt102",
"PATH=/sbin:/usr/sbin:/bin:/usr/bin", "SHELL=/bin/sh", "PWD=/"]) = 0
uname({sysname="Linux", nodename="LNS",
release="4.5.0-09406-g46e595a17dcf", version="#72 Tue May 10 15:41:34
CEST 2016", machine="armv5tejl", domainname="(none)"}) = 0
brk(0)                                  = 0x153000
brk(0x153d20)                           = 0x153d20
set_tls(0x1534c0, 0x14d1e4, 0, 0x153d20, 0x14e368) = 0
readlink("/proc/self/exe", "/bin/busybox", 4096) = 12
brk(0x174d20)                           = 0x174d20
brk(0x175000)                           = 0x175000
getuid32()                              = 0
rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0
rt_sigaction(SIGCHLD, NULL, {SIG_DFL, [], 0}, 8) = 0
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
nanosleep({1, 0},

And the heartbeat led doesn't blink anymore (full on), as if the
timers never fire.

The platform is an AT91SAM9G35-CM.

git bisect gives a merge as the 1st bad commit :(
first bad commit: [46e595a17dcf11404f713845ecb5b06b92a94e43] Merge tag
'armsoc-drivers' of
git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc


Here is the git bisect log:
git bisect start
# good: [b562e44f507e863c6792946e4e1b1449fbbac85d] Linux 4.5
git bisect good b562e44f507e863c6792946e4e1b1449fbbac85d
# bad: [f55532a0c0b8bb6148f4e07853b876ef73bc69ca] Linux 4.6-rc1
git bisect bad f55532a0c0b8bb6148f4e07853b876ef73bc69ca
# good: [6b5f04b6cf8ebab9a65d9c0026c650bb2538fd0f] Merge branch
'for-4.6' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup
git bisect good 6b5f04b6cf8ebab9a65d9c0026c650bb2538fd0f
# bad: [53d2e6976bd4042672ed7b90dfbf4b31635b7dcf] Merge tag
'xfs-for-linus-4.6-rc1' of
git://git.kernel.org/pub/scm/linux/kernel/git/dgc/linux-xfs
git bisect bad 53d2e6976bd4042672ed7b90dfbf4b31635b7dcf
# good: [8626c56c8279b88b91b8df55345cdf89542d5e90] bridge: fix
potential use-after-free when hook returns QUEUE or STOLEN verdict
git bisect good 8626c56c8279b88b91b8df55345cdf89542d5e90
# good: [8c6d4082fc6ad2214e945b5b7368b828fb16e9a9] Merge tag
'armsoc-arm64' of
git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
git bisect good 8c6d4082fc6ad2214e945b5b7368b828fb16e9a9
# good: [915c56bc01d6eab071e0dd1c6ea3bf73fbe5124f] Merge tag
'armsoc-dt64' of
git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
git bisect good 915c56bc01d6eab071e0dd1c6ea3bf73fbe5124f
# bad: [24b5e20f11a75866bbffc46c30a22fa50612a769] Merge branch
'efi-core-for-linus' of
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
git bisect bad 24b5e20f11a75866bbffc46c30a22fa50612a769
# bad: [46e595a17dcf11404f713845ecb5b06b92a94e43] Merge tag
'armsoc-drivers' of
git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
git bisect bad 46e595a17dcf11404f713845ecb5b06b92a94e43
# good: [4a6f791c359a78535553ccf060615622d27b1ce1] Merge tag
'omap-for-v4.6/defconfig-signed' of
git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into
next/defconfig
git bisect good 4a6f791c359a78535553ccf060615622d27b1ce1
# good: [f628c64fc0ffdcd08f39d74ec23ed7706cb8653b] Merge tag
'at91-ab-4.6-drivers' of
git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux into
next/drivers
git bisect good f628c64fc0ffdcd08f39d74ec23ed7706cb8653b
# good: [387eb3f3d574ebf43b3afe83da59a99481866b78] reset: socfpga:
Make reset_control_ops const
git bisect good 387eb3f3d574ebf43b3afe83da59a99481866b78
# good: [87023bc2ed11ea6b0944b34cc0281454c01832bf] Merge tag
'sunxi-drivers-for-4.6' of
https://git.kernel.org/pub/scm/linux/kernel/git/mripard/linux into
next/drivers
git bisect good 87023bc2ed11ea6b0944b34cc0281454c01832bf
# good: [33b96d2c9579213cf3f36d7b29841b1e464750c4] bus: imx-weim: Take
the 'status' property value into account
git bisect good 33b96d2c9579213cf3f36d7b29841b1e464750c4
# good: [9fe5bf92c30a89631eb1fafe0d9b18e2ba331ebb] ARM: configs: Add
new config fragment to change RAM start point
git bisect good 9fe5bf92c30a89631eb1fafe0d9b18e2ba331ebb
# good: [e3b1f64e04f57198ca0ab1216d824a5547be8446] Merge tag
'armsoc-defconfig' of
git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
git bisect good e3b1f64e04f57198ca0ab1216d824a5547be8446
# first bad commit: [46e595a17dcf11404f713845ecb5b06b92a94e43] Merge
tag 'armsoc-drivers' of
git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc


And the defconfig :
CONFIG_KERNEL_LZO=y
CONFIG_DEFAULT_HOSTNAME="lns"
# CONFIG_SWAP is not set
CONFIG_SYSVIPC=y
# CONFIG_CROSS_MEMORY_ATTACH is not set
CONFIG_FHANDLE=y
CONFIG_IKCONFIG=y
CONFIG_IKCONFIG_PROC=y
CONFIG_RELAY=y
CONFIG_CC_OPTIMIZE_FOR_SIZE=y
CONFIG_KALLSYMS_ALL=y
CONFIG_EMBEDDED=y
CONFIG_SLAB=y
CONFIG_PARTITION_ADVANCED=y
# CONFIG_IOSCHED_DEADLINE is not set
# CONFIG_IOSCHED_CFQ is not set
# CONFIG_ARCH_MULTI_V7 is not set
CONFIG_ARCH_AT91=y
CONFIG_SOC_AT91SAM9=y
CONFIG_AEABI=y
# CONFIG_COMPACTION is not set
CONFIG_UACCESS_WITH_MEMCPY=y
# CONFIG_ATAGS is not set
CONFIG_ZBOOT_ROM_TEXT=0x0
CONFIG_ZBOOT_ROM_BSS=0x0
# CONFIG_COREDUMP is not set
# CONFIG_SUSPEND is not set
CONFIG_NET=y
CONFIG_PACKET=y
CONFIG_PACKET_DIAG=y
CONFIG_UNIX=y
CONFIG_UNIX_DIAG=y
CONFIG_XFRM_USER=y
CONFIG_NET_KEY=y
CONFIG_INET=y
CONFIG_IP_ADVANCED_ROUTER=y
CONFIG_IP_MULTIPLE_TABLES=y
CONFIG_IP_ROUTE_VERBOSE=y
CONFIG_IP_PNP=y
CONFIG_IP_PNP_DHCP=y
CONFIG_INET_AH=y
CONFIG_INET_ESP=y
CONFIG_INET_IPCOMP=y
CONFIG_INET_UDP_DIAG=y
CONFIG_INET6_AH=y
CONFIG_INET6_ESP=y
CONFIG_INET6_IPCOMP=y
CONFIG_NETFILTER=y
# CONFIG_BRIDGE_NETFILTER is not set
CONFIG_NETFILTER_NETLINK_LOG=y
CONFIG_NF_CONNTRACK=y
# CONFIG_NF_CONNTRACK_PROCFS is not set
CONFIG_NF_CT_NETLINK=y
CONFIG_NETFILTER_XT_TARGET_CONNMARK=y
CONFIG_NETFILTER_XT_TARGET_MARK=y
CONFIG_NF_CONNTRACK_IPV4=y
CONFIG_NF_NAT_IPV4=y
CONFIG_IP_NF_IPTABLES=y
CONFIG_IP_NF_FILTER=y
CONFIG_IP_NF_TARGET_REJECT=y
CONFIG_IP_NF_MANGLE=y
CONFIG_NF_CONNTRACK_IPV6=y
CONFIG_IP6_NF_IPTABLES=y
CONFIG_IP6_NF_MATCH_IPV6HEADER=y
CONFIG_IP6_NF_FILTER=y
CONFIG_IP6_NF_TARGET_REJECT=y
CONFIG_IP6_NF_MANGLE=y
CONFIG_BRIDGE=y
# CONFIG_BRIDGE_IGMP_SNOOPING is not set
CONFIG_DNS_RESOLVER=y
CONFIG_NETLINK_DIAG=y
CONFIG_CFG80211=y
CONFIG_CFG80211_WEXT=y
CONFIG_MAC80211=y
CONFIG_MAC80211_LEDS=y
CONFIG_RFKILL=y
CONFIG_RFKILL_INPUT=y
CONFIG_RFKILL_GPIO=y
CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
CONFIG_DEVTMPFS=y
CONFIG_DEVTMPFS_MOUNT=y
# CONFIG_STANDALONE is not set
# CONFIG_PREVENT_FIRMWARE_BUILD is not set
# CONFIG_FIRMWARE_IN_KERNEL is not set
CONFIG_MTD=y
CONFIG_MTD_CMDLINE_PARTS=y
CONFIG_MTD_NAND=y
CONFIG_MTD_NAND_ATMEL=y
CONFIG_MTD_UBI=y
CONFIG_MTD_UBI_FASTMAP=y
CONFIG_BLK_DEV_LOOP=y
CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_RAM_COUNT=4
CONFIG_BLK_DEV_RAM_SIZE=8192
CONFIG_ATMEL_TCLIB=y
CONFIG_ATMEL_SSC=y
CONFIG_EEPROM_AT24=y
CONFIG_EEPROM_93CX6=y
CONFIG_SCSI=y
CONFIG_BLK_DEV_SD=y
# CONFIG_SCSI_LOWLEVEL is not set
CONFIG_NETDEVICES=y
# CONFIG_NET_VENDOR_ARC is not set
# CONFIG_NET_CADENCE is not set
# CONFIG_NET_VENDOR_BROADCOM is not set
# CONFIG_NET_VENDOR_CIRRUS is not set
# CONFIG_NET_VENDOR_EZCHIP is not set
# CONFIG_NET_VENDOR_FARADAY is not set
# CONFIG_NET_VENDOR_HISILICON is not set
# CONFIG_NET_VENDOR_INTEL is not set
# CONFIG_NET_VENDOR_MARVELL is not set
# CONFIG_NET_VENDOR_MICREL is not set
# CONFIG_NET_VENDOR_MICROCHIP is not set
# CONFIG_NET_VENDOR_NATSEMI is not set
# CONFIG_NET_VENDOR_NETRONOME is not set
# CONFIG_NET_VENDOR_QUALCOMM is not set
# CONFIG_NET_VENDOR_RENESAS is not set
# CONFIG_NET_VENDOR_ROCKER is not set
# CONFIG_NET_VENDOR_SAMSUNG is not set
# CONFIG_NET_VENDOR_SEEQ is not set
# CONFIG_NET_VENDOR_SMSC is not set
# CONFIG_NET_VENDOR_STMICRO is not set
# CONFIG_NET_VENDOR_SYNOPSYS is not set
# CONFIG_NET_VENDOR_VIA is not set
# CONFIG_NET_VENDOR_WIZNET is not set
CONFIG_PHYLIB=y
CONFIG_DAVICOM_PHY=y
CONFIG_PPP=y
CONFIG_PPP_DEFLATE=y
CONFIG_PPP_ASYNC=y
# CONFIG_USB_NET_DRIVERS is not set
# CONFIG_WLAN is not set
# CONFIG_INPUT_MOUSEDEV is not set
CONFIG_INPUT_EVDEV=y
# CONFIG_INPUT_KEYBOARD is not set
# CONFIG_INPUT_MOUSE is not set
CONFIG_INPUT_MISC=y
CONFIG_INPUT_UINPUT=y
# CONFIG_SERIO is not set
# CONFIG_LEGACY_PTYS is not set
# CONFIG_DEVKMEM is not set
CONFIG_SERIAL_ATMEL=y
CONFIG_SERIAL_ATMEL_CONSOLE=y
# CONFIG_SERIAL_ATMEL_PDC is not set
CONFIG_I2C=y
# CONFIG_I2C_COMPAT is not set
CONFIG_I2C_CHARDEV=y
CONFIG_I2C_MUX=y
CONFIG_I2C_AT91=y
CONFIG_I2C_GPIO=y
CONFIG_SPI=y
CONFIG_SPI_ATMEL=y
CONFIG_SPI_SPIDEV=y
CONFIG_GPIO_SYSFS=y
# CONFIG_HWMON is not set
CONFIG_WATCHDOG=y
CONFIG_AT91SAM9X_WATCHDOG=y
CONFIG_SSB=y
CONFIG_BCMA=y
CONFIG_SOUND=y
CONFIG_SND=y
# CONFIG_SND_SUPPORT_OLD_API is not set
# CONFIG_SND_VERBOSE_PROCFS is not set
# CONFIG_SND_DRIVERS is not set
# CONFIG_SND_ARM is not set
# CONFIG_SND_SPI is not set
# CONFIG_SND_USB is not set
CONFIG_SND_SOC=y
CONFIG_SND_ATMEL_SOC=y
CONFIG_SND_AT91_SOC_SAM9X5_WM8731=y
CONFIG_HIDRAW=y
CONFIG_UHID=y
CONFIG_USB_HIDDEV=y
CONFIG_USB=y
CONFIG_USB_ANNOUNCE_NEW_DEVICES=y
CONFIG_USB_EHCI_HCD=y
CONFIG_USB_EHCI_ROOT_HUB_TT=y
CONFIG_USB_ACM=y
CONFIG_USB_WDM=y
CONFIG_USB_STORAGE=y
CONFIG_USB_STORAGE_REALTEK=y
CONFIG_USB_STORAGE_DATAFAB=y
CONFIG_USB_STORAGE_FREECOM=y
CONFIG_USB_STORAGE_ISD200=y
CONFIG_USB_STORAGE_USBAT=y
CONFIG_USB_STORAGE_SDDR09=y
CONFIG_USB_STORAGE_SDDR55=y
CONFIG_USB_STORAGE_JUMPSHOT=y
CONFIG_USB_STORAGE_ALAUDA=y
CONFIG_USB_STORAGE_ONETOUCH=y
CONFIG_USB_STORAGE_KARMA=y
CONFIG_USB_STORAGE_CYPRESS_ATACB=y
CONFIG_USB_STORAGE_ENE_UB6250=y
CONFIG_USB_SERIAL=y
CONFIG_USB_SERIAL_IPW=y
CONFIG_USB_SERIAL_PL2303=y
CONFIG_USB_SERIAL_QUALCOMM=y
CONFIG_USB_SERIAL_SIERRAWIRELESS=y
CONFIG_USB_SERIAL_OPTION=y
CONFIG_USB_EZUSB_FX2=y
CONFIG_USB_GADGET=y
CONFIG_USB_AT91=y
CONFIG_USB_ATMEL_USBA=y
CONFIG_USB_ETH=y
CONFIG_NEW_LEDS=y
CONFIG_LEDS_CLASS=y
CONFIG_LEDS_GPIO=y
CONFIG_LEDS_TRIGGER_TIMER=y
CONFIG_LEDS_TRIGGER_ONESHOT=y
CONFIG_LEDS_TRIGGER_HEARTBEAT=y
CONFIG_LEDS_TRIGGER_GPIO=y
CONFIG_LEDS_TRIGGER_DEFAULT_ON=y
CONFIG_DMADEVICES=y
CONFIG_AT_HDMAC=y
# CONFIG_IOMMU_SUPPORT is not set
CONFIG_FANOTIFY=y
CONFIG_VFAT_FS=y
CONFIG_FAT_DEFAULT_CODEPAGE=850
CONFIG_NTFS_FS=y
CONFIG_TMPFS=y
CONFIG_UBIFS_FS=y
CONFIG_UBIFS_FS_ADVANCED_COMPR=y
# CONFIG_NETWORK_FILESYSTEMS is not set
CONFIG_NLS_DEFAULT="utf8"
CONFIG_NLS_CODEPAGE_437=y
CONFIG_NLS_CODEPAGE_850=y
CONFIG_NLS_ISO8859_1=y
CONFIG_NLS_UTF8=y
CONFIG_PRINTK_TIME=y
CONFIG_MESSAGE_LOGLEVEL_DEFAULT=7
CONFIG_STRIP_ASM_SYMS=y
CONFIG_DEBUG_SECTION_MISMATCH=y
CONFIG_MAGIC_SYSRQ=y
CONFIG_LOCKUP_DETECTOR=y
CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC=y
CONFIG_BOOTPARAM_HUNG_TASK_PANIC=y
# CONFIG_SCHED_DEBUG is not set
# CONFIG_DEBUG_BUGVERBOSE is not set
CONFIG_FUNCTION_TRACER=y
CONFIG_FTRACE_SYSCALLS=y
CONFIG_TRACER_SNAPSHOT=y
CONFIG_KEYS=y
CONFIG_CRYPTO_ECB=y
CONFIG_CRYPTO_CRC32C=y
CONFIG_CRYPTO_MICHAEL_MIC=y
CONFIG_CRYPTO_USER_API_HASH=y
CONFIG_CRYPTO_USER_API_SKCIPHER=y
# CONFIG_CRYPTO_HW is not set
CONFIG_CRC_ITU_T=y
CONFIG_CRC7=y

Regards,
Richard.

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [BISECTED] Regression v4.6-rc1 : nanosleep doesn't return on AT91SAM9
  2016-05-10 13:58 [BISECTED] Regression v4.6-rc1 : nanosleep doesn't return on AT91SAM9 Richard Genoud
@ 2016-05-10 14:25 ` Richard Genoud
  2016-05-10 14:47   ` Boris Brezillon
  0 siblings, 1 reply; 7+ messages in thread
From: Richard Genoud @ 2016-05-10 14:25 UTC (permalink / raw)
  To: Arnd Bergmann, Nicolas Ferre
  Cc: boris.brezillon, Alexandre Belloni, linux-arm-kernel, linux-kernel

2016-05-10 15:58 GMT+02:00 Richard Genoud <richard.genoud@gmail.com>:
> Hi,
>
> Starting with 4.6-rc1, a sleep 1 doesn't return :
>
> execve("/bin/sleep", ["sleep", "1"], ["USER=root", "SHLVL=1",
> "OLDPWD=/var", "HOME=/", "TERM=vt102",
> "PATH=/sbin:/usr/sbin:/bin:/usr/bin", "SHELL=/bin/sh", "PWD=/"]) = 0
> uname({sysname="Linux", nodename="LNS",
> release="4.5.0-09406-g46e595a17dcf", version="#72 Tue May 10 15:41:34
> CEST 2016", machine="armv5tejl", domainname="(none)"}) = 0
> brk(0)                                  = 0x153000
> brk(0x153d20)                           = 0x153d20
> set_tls(0x1534c0, 0x14d1e4, 0, 0x153d20, 0x14e368) = 0
> readlink("/proc/self/exe", "/bin/busybox", 4096) = 12
> brk(0x174d20)                           = 0x174d20
> brk(0x175000)                           = 0x175000
> getuid32()                              = 0
> rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0
> rt_sigaction(SIGCHLD, NULL, {SIG_DFL, [], 0}, 8) = 0
> rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
> nanosleep({1, 0},
>
> And the heartbeat led doesn't blink anymore (full on), as if the
> timers never fire.
>
> The platform is an AT91SAM9G35-CM.
>
> git bisect gives a merge as the 1st bad commit :(
> first bad commit: [46e595a17dcf11404f713845ecb5b06b92a94e43] Merge tag
> 'armsoc-drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc


I went a little further in tracking that down, starting from the merge
(1st bad commit) and reverting some commits.
It seems that the culprit is :
commit 863a81c3be1d931bdae6426e231add9334311f13
Author: Boris Brezillon <boris.brezillon@free-electrons.com>
Date:   Fri Sep 5 09:54:13 2014 +0200
    clk: at91: make use of syscon to share PMC registers in several drivers

Here are the commits I've reverted :

git log --oneline --decorate -20
849cdaa0cf04 (HEAD, tag: good) Revert "clk: at91: make use of syscon
to share PMC registers in several drivers"
4bd6dde95321 (tag: last_bad) Revert "clk: at91: make use of
syscon/regmap internally"
a56dacaa24c4 (tag: always_bad) Revert "clk: at91: remove IRQ handling
and use polling"
33edfe7a2de6 Revert "clk: at91: pmc: merge at91_pmc_init in atmel_pmc_probe"
0b22bb649eae Revert "clk: at91: pmc: move pmc structures to C file"
14994fdff366 Revert "ARM: at91: pm: simply call at91_pm_init"
6f0821175327 (tag: still_bad) Revert "ARM: at91: pm: find and remap the pmc"
b52bbf7fad1b Revert "ARM: at91: pm: move idle functions to pm.c"
dffb1a5f68b9 Revert "ARM: at91: remove useless includes and function prototypes"
db352691dcc1 Revert "usb: gadget: atmel: access the PMC using regmap"
f7b5433dbbc8 Revert "clk: at91: pmc: drop at91_pmc_base"
6e6dfc0d91c0 Revert "clk: at91: pmc: remove useless capacities handling"
ceddd3f88ada Revert "clk: at91: remove useless includes"
46e595a17dcf (tag: bad) Merge tag 'armsoc-drivers' of
git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
e3b1f64e04f5 Merge tag 'armsoc-defconfig' of
git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
915c56bc01d6 Merge tag 'armsoc-dt64' of
git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
5a6b7e53d035 Merge tag 'armsoc-dt' of
git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
8c6d4082fc6a Merge tag 'armsoc-arm64' of
git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
33b3d2e88c9e Merge tag 'armsoc-soc' of
git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
e88fa1b8b00a Merge tag 'armsoc-cleanup' of
git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [BISECTED] Regression v4.6-rc1 : nanosleep doesn't return on AT91SAM9
  2016-05-10 14:25 ` Richard Genoud
@ 2016-05-10 14:47   ` Boris Brezillon
  2016-05-10 14:59     ` Richard Genoud
  0 siblings, 1 reply; 7+ messages in thread
From: Boris Brezillon @ 2016-05-10 14:47 UTC (permalink / raw)
  To: Richard Genoud
  Cc: Arnd Bergmann, Nicolas Ferre, Alexandre Belloni,
	linux-arm-kernel, linux-kernel

Hi Richard,

On Tue, 10 May 2016 16:25:25 +0200
Richard Genoud <richard.genoud@gmail.com> wrote:

> 2016-05-10 15:58 GMT+02:00 Richard Genoud <richard.genoud@gmail.com>:
> > Hi,
> >
> > Starting with 4.6-rc1, a sleep 1 doesn't return :
> >
> > execve("/bin/sleep", ["sleep", "1"], ["USER=root", "SHLVL=1",
> > "OLDPWD=/var", "HOME=/", "TERM=vt102",
> > "PATH=/sbin:/usr/sbin:/bin:/usr/bin", "SHELL=/bin/sh", "PWD=/"]) = 0
> > uname({sysname="Linux", nodename="LNS",
> > release="4.5.0-09406-g46e595a17dcf", version="#72 Tue May 10 15:41:34
> > CEST 2016", machine="armv5tejl", domainname="(none)"}) = 0
> > brk(0)                                  = 0x153000
> > brk(0x153d20)                           = 0x153d20
> > set_tls(0x1534c0, 0x14d1e4, 0, 0x153d20, 0x14e368) = 0
> > readlink("/proc/self/exe", "/bin/busybox", 4096) = 12
> > brk(0x174d20)                           = 0x174d20
> > brk(0x175000)                           = 0x175000
> > getuid32()                              = 0
> > rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0
> > rt_sigaction(SIGCHLD, NULL, {SIG_DFL, [], 0}, 8) = 0
> > rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
> > nanosleep({1, 0},
> >
> > And the heartbeat led doesn't blink anymore (full on), as if the
> > timers never fire.
> >
> > The platform is an AT91SAM9G35-CM.
> >
> > git bisect gives a merge as the 1st bad commit :(
> > first bad commit: [46e595a17dcf11404f713845ecb5b06b92a94e43] Merge tag
> > 'armsoc-drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc  
> 
> 
> I went a little further in tracking that down, starting from the merge
> (1st bad commit) and reverting some commits.
> It seems that the culprit is :
> commit 863a81c3be1d931bdae6426e231add9334311f13
> Author: Boris Brezillon <boris.brezillon@free-electrons.com>
> Date:   Fri Sep 5 09:54:13 2014 +0200
>     clk: at91: make use of syscon to share PMC registers in several drivers
> 
> Here are the commits I've reverted :
> 
> git log --oneline --decorate -20
> 849cdaa0cf04 (HEAD, tag: good) Revert "clk: at91: make use of syscon
> to share PMC registers in several drivers"
> 4bd6dde95321 (tag: last_bad) Revert "clk: at91: make use of
> syscon/regmap internally"
> a56dacaa24c4 (tag: always_bad) Revert "clk: at91: remove IRQ handling
> and use polling"
> 33edfe7a2de6 Revert "clk: at91: pmc: merge at91_pmc_init in atmel_pmc_probe"
> 0b22bb649eae Revert "clk: at91: pmc: move pmc structures to C file"
> 14994fdff366 Revert "ARM: at91: pm: simply call at91_pm_init"
> 6f0821175327 (tag: still_bad) Revert "ARM: at91: pm: find and remap the pmc"
> b52bbf7fad1b Revert "ARM: at91: pm: move idle functions to pm.c"
> dffb1a5f68b9 Revert "ARM: at91: remove useless includes and function prototypes"
> db352691dcc1 Revert "usb: gadget: atmel: access the PMC using regmap"
> f7b5433dbbc8 Revert "clk: at91: pmc: drop at91_pmc_base"
> 6e6dfc0d91c0 Revert "clk: at91: pmc: remove useless capacities handling"
> ceddd3f88ada Revert "clk: at91: remove useless includes"
> 46e595a17dcf (tag: bad) Merge tag 'armsoc-drivers' of
> git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
> e3b1f64e04f5 Merge tag 'armsoc-defconfig' of
> git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
> 915c56bc01d6 Merge tag 'armsoc-dt64' of
> git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
> 5a6b7e53d035 Merge tag 'armsoc-dt' of
> git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
> 8c6d4082fc6a Merge tag 'armsoc-arm64' of
> git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
> 33b3d2e88c9e Merge tag 'armsoc-soc' of
> git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
> e88fa1b8b00a Merge tag 'armsoc-cleanup' of
> git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc

Thanks for the detailed report.

Can you try again after applying this patch [1]?

Regards,

Boris

[1]http://code.bulix.org/dx1c0t-98377

-- 
Boris Brezillon, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [BISECTED] Regression v4.6-rc1 : nanosleep doesn't return on AT91SAM9
  2016-05-10 14:47   ` Boris Brezillon
@ 2016-05-10 14:59     ` Richard Genoud
  2016-05-10 15:18       ` Nicolas Ferre
  0 siblings, 1 reply; 7+ messages in thread
From: Richard Genoud @ 2016-05-10 14:59 UTC (permalink / raw)
  To: Boris Brezillon
  Cc: Arnd Bergmann, Nicolas Ferre, Alexandre Belloni,
	linux-arm-kernel, linux-kernel

2016-05-10 16:47 GMT+02:00 Boris Brezillon <boris.brezillon@free-electrons.com>:
> Hi Richard,
>
> On Tue, 10 May 2016 16:25:25 +0200
> Richard Genoud <richard.genoud@gmail.com> wrote:
>
>> 2016-05-10 15:58 GMT+02:00 Richard Genoud <richard.genoud@gmail.com>:
>> > Hi,
>> >
>> > Starting with 4.6-rc1, a sleep 1 doesn't return :
>> >
>> > execve("/bin/sleep", ["sleep", "1"], ["USER=root", "SHLVL=1",
>> > "OLDPWD=/var", "HOME=/", "TERM=vt102",
>> > "PATH=/sbin:/usr/sbin:/bin:/usr/bin", "SHELL=/bin/sh", "PWD=/"]) = 0
>> > uname({sysname="Linux", nodename="LNS",
>> > release="4.5.0-09406-g46e595a17dcf", version="#72 Tue May 10 15:41:34
>> > CEST 2016", machine="armv5tejl", domainname="(none)"}) = 0
>> > brk(0)                                  = 0x153000
>> > brk(0x153d20)                           = 0x153d20
>> > set_tls(0x1534c0, 0x14d1e4, 0, 0x153d20, 0x14e368) = 0
>> > readlink("/proc/self/exe", "/bin/busybox", 4096) = 12
>> > brk(0x174d20)                           = 0x174d20
>> > brk(0x175000)                           = 0x175000
>> > getuid32()                              = 0
>> > rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0
>> > rt_sigaction(SIGCHLD, NULL, {SIG_DFL, [], 0}, 8) = 0
>> > rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
>> > nanosleep({1, 0},
>> >
>> > And the heartbeat led doesn't blink anymore (full on), as if the
>> > timers never fire.
>> >
>> > The platform is an AT91SAM9G35-CM.
>> >
>> > git bisect gives a merge as the 1st bad commit :(
>> > first bad commit: [46e595a17dcf11404f713845ecb5b06b92a94e43] Merge tag
>> > 'armsoc-drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
>>
>>
>> I went a little further in tracking that down, starting from the merge
>> (1st bad commit) and reverting some commits.
>> It seems that the culprit is :
>> commit 863a81c3be1d931bdae6426e231add9334311f13
>> Author: Boris Brezillon <boris.brezillon@free-electrons.com>
>> Date:   Fri Sep 5 09:54:13 2014 +0200
>>     clk: at91: make use of syscon to share PMC registers in several drivers
>>
>> Here are the commits I've reverted :
>>
>> git log --oneline --decorate -20
>> 849cdaa0cf04 (HEAD, tag: good) Revert "clk: at91: make use of syscon
>> to share PMC registers in several drivers"
>> 4bd6dde95321 (tag: last_bad) Revert "clk: at91: make use of
>> syscon/regmap internally"
>> a56dacaa24c4 (tag: always_bad) Revert "clk: at91: remove IRQ handling
>> and use polling"
>> 33edfe7a2de6 Revert "clk: at91: pmc: merge at91_pmc_init in atmel_pmc_probe"
>> 0b22bb649eae Revert "clk: at91: pmc: move pmc structures to C file"
>> 14994fdff366 Revert "ARM: at91: pm: simply call at91_pm_init"
>> 6f0821175327 (tag: still_bad) Revert "ARM: at91: pm: find and remap the pmc"
>> b52bbf7fad1b Revert "ARM: at91: pm: move idle functions to pm.c"
>> dffb1a5f68b9 Revert "ARM: at91: remove useless includes and function prototypes"
>> db352691dcc1 Revert "usb: gadget: atmel: access the PMC using regmap"
>> f7b5433dbbc8 Revert "clk: at91: pmc: drop at91_pmc_base"
>> 6e6dfc0d91c0 Revert "clk: at91: pmc: remove useless capacities handling"
>> ceddd3f88ada Revert "clk: at91: remove useless includes"
>> 46e595a17dcf (tag: bad) Merge tag 'armsoc-drivers' of
>> git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
>> e3b1f64e04f5 Merge tag 'armsoc-defconfig' of
>> git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
>> 915c56bc01d6 Merge tag 'armsoc-dt64' of
>> git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
>> 5a6b7e53d035 Merge tag 'armsoc-dt' of
>> git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
>> 8c6d4082fc6a Merge tag 'armsoc-arm64' of
>> git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
>> 33b3d2e88c9e Merge tag 'armsoc-soc' of
>> git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
>> e88fa1b8b00a Merge tag 'armsoc-cleanup' of
>> git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
>
> Thanks for the detailed report.
>
> Can you try again after applying this patch [1]?
>
> Regards,
>
> Boris
>
> [1]http://code.bulix.org/dx1c0t-98377

Yes, it works.
Big thumbs up, that was fast !

Less than 1 hour between the report and the patch ! :)

This is clearly 4.6 material (as it's a regression from 4.5), but it's
maybe a little late.
Anrd, Nicolas, what do you think ?


Thanks,
Richard.

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [BISECTED] Regression v4.6-rc1 : nanosleep doesn't return on AT91SAM9
  2016-05-10 14:59     ` Richard Genoud
@ 2016-05-10 15:18       ` Nicolas Ferre
  2016-05-10 19:40         ` Richard Genoud
  2016-05-12  6:41         ` Richard Genoud
  0 siblings, 2 replies; 7+ messages in thread
From: Nicolas Ferre @ 2016-05-10 15:18 UTC (permalink / raw)
  To: Richard Genoud, Boris Brezillon
  Cc: Arnd Bergmann, Alexandre Belloni, linux-arm-kernel, linux-kernel

Le 10/05/2016 16:59, Richard Genoud a écrit :
> 2016-05-10 16:47 GMT+02:00 Boris Brezillon <boris.brezillon@free-electrons.com>:
>> Hi Richard,
>>
>> On Tue, 10 May 2016 16:25:25 +0200
>> Richard Genoud <richard.genoud@gmail.com> wrote:
>>
>>> 2016-05-10 15:58 GMT+02:00 Richard Genoud <richard.genoud@gmail.com>:
>>>> Hi,
>>>>
>>>> Starting with 4.6-rc1, a sleep 1 doesn't return :
>>>>
>>>> execve("/bin/sleep", ["sleep", "1"], ["USER=root", "SHLVL=1",
>>>> "OLDPWD=/var", "HOME=/", "TERM=vt102",
>>>> "PATH=/sbin:/usr/sbin:/bin:/usr/bin", "SHELL=/bin/sh", "PWD=/"]) = 0
>>>> uname({sysname="Linux", nodename="LNS",
>>>> release="4.5.0-09406-g46e595a17dcf", version="#72 Tue May 10 15:41:34
>>>> CEST 2016", machine="armv5tejl", domainname="(none)"}) = 0
>>>> brk(0)                                  = 0x153000
>>>> brk(0x153d20)                           = 0x153d20
>>>> set_tls(0x1534c0, 0x14d1e4, 0, 0x153d20, 0x14e368) = 0
>>>> readlink("/proc/self/exe", "/bin/busybox", 4096) = 12
>>>> brk(0x174d20)                           = 0x174d20
>>>> brk(0x175000)                           = 0x175000
>>>> getuid32()                              = 0
>>>> rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0
>>>> rt_sigaction(SIGCHLD, NULL, {SIG_DFL, [], 0}, 8) = 0
>>>> rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
>>>> nanosleep({1, 0},
>>>>
>>>> And the heartbeat led doesn't blink anymore (full on), as if the
>>>> timers never fire.
>>>>
>>>> The platform is an AT91SAM9G35-CM.
>>>>
>>>> git bisect gives a merge as the 1st bad commit :(
>>>> first bad commit: [46e595a17dcf11404f713845ecb5b06b92a94e43] Merge tag
>>>> 'armsoc-drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
>>>
>>>
>>> I went a little further in tracking that down, starting from the merge
>>> (1st bad commit) and reverting some commits.
>>> It seems that the culprit is :
>>> commit 863a81c3be1d931bdae6426e231add9334311f13
>>> Author: Boris Brezillon <boris.brezillon@free-electrons.com>
>>> Date:   Fri Sep 5 09:54:13 2014 +0200
>>>     clk: at91: make use of syscon to share PMC registers in several drivers
>>>
>>> Here are the commits I've reverted :
>>>
>>> git log --oneline --decorate -20
>>> 849cdaa0cf04 (HEAD, tag: good) Revert "clk: at91: make use of syscon
>>> to share PMC registers in several drivers"
>>> 4bd6dde95321 (tag: last_bad) Revert "clk: at91: make use of
>>> syscon/regmap internally"
>>> a56dacaa24c4 (tag: always_bad) Revert "clk: at91: remove IRQ handling
>>> and use polling"
>>> 33edfe7a2de6 Revert "clk: at91: pmc: merge at91_pmc_init in atmel_pmc_probe"
>>> 0b22bb649eae Revert "clk: at91: pmc: move pmc structures to C file"
>>> 14994fdff366 Revert "ARM: at91: pm: simply call at91_pm_init"
>>> 6f0821175327 (tag: still_bad) Revert "ARM: at91: pm: find and remap the pmc"
>>> b52bbf7fad1b Revert "ARM: at91: pm: move idle functions to pm.c"
>>> dffb1a5f68b9 Revert "ARM: at91: remove useless includes and function prototypes"
>>> db352691dcc1 Revert "usb: gadget: atmel: access the PMC using regmap"
>>> f7b5433dbbc8 Revert "clk: at91: pmc: drop at91_pmc_base"
>>> 6e6dfc0d91c0 Revert "clk: at91: pmc: remove useless capacities handling"
>>> ceddd3f88ada Revert "clk: at91: remove useless includes"
>>> 46e595a17dcf (tag: bad) Merge tag 'armsoc-drivers' of
>>> git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
>>> e3b1f64e04f5 Merge tag 'armsoc-defconfig' of
>>> git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
>>> 915c56bc01d6 Merge tag 'armsoc-dt64' of
>>> git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
>>> 5a6b7e53d035 Merge tag 'armsoc-dt' of
>>> git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
>>> 8c6d4082fc6a Merge tag 'armsoc-arm64' of
>>> git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
>>> 33b3d2e88c9e Merge tag 'armsoc-soc' of
>>> git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
>>> e88fa1b8b00a Merge tag 'armsoc-cleanup' of
>>> git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
>>
>> Thanks for the detailed report.
>>
>> Can you try again after applying this patch [1]?
>>
>> Regards,
>>
>> Boris
>>
>> [1]http://code.bulix.org/dx1c0t-98377
> 
> Yes, it works.
> Big thumbs up, that was fast !
> 
> Less than 1 hour between the report and the patch ! :)

Yes, absolutely terrific! Thanks Boris.

I'd like you to test with this instead as it's the real range of the IP:
+ reg = <0xfffffc00 0x110>;

Even I'm pretty confident ;-) Can you please do this for us ?

> This is clearly 4.6 material (as it's a regression from 4.5), but it's
> maybe a little late.
> Anrd, Nicolas, what do you think ?

I sent a PR this morning to Arnd with a "fix"... I hope that he won't be
annoyed if I send him another one this evening...  But clearly, it's a
regression and a pretty bad one :-\

Thanks a lot for this report Richard,
-- 
Nicolas Ferre

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [BISECTED] Regression v4.6-rc1 : nanosleep doesn't return on AT91SAM9
  2016-05-10 15:18       ` Nicolas Ferre
@ 2016-05-10 19:40         ` Richard Genoud
  2016-05-12  6:41         ` Richard Genoud
  1 sibling, 0 replies; 7+ messages in thread
From: Richard Genoud @ 2016-05-10 19:40 UTC (permalink / raw)
  To: Nicolas Ferre
  Cc: Boris Brezillon, Arnd Bergmann, Alexandre Belloni,
	linux-arm-kernel, linux-kernel

2016-05-10 17:18 GMT+02:00 Nicolas Ferre <nicolas.ferre@atmel.com>:
> Le 10/05/2016 16:59, Richard Genoud a écrit :
>> 2016-05-10 16:47 GMT+02:00 Boris Brezillon <boris.brezillon@free-electrons.com>:
>>> Hi Richard,
>>>
>>> On Tue, 10 May 2016 16:25:25 +0200
>>> Richard Genoud <richard.genoud@gmail.com> wrote:
>>>
>>>> 2016-05-10 15:58 GMT+02:00 Richard Genoud <richard.genoud@gmail.com>:
>>>>> Hi,
>>>>>
>>>>> Starting with 4.6-rc1, a sleep 1 doesn't return :
>>>>>
>>>>> execve("/bin/sleep", ["sleep", "1"], ["USER=root", "SHLVL=1",
>>>>> "OLDPWD=/var", "HOME=/", "TERM=vt102",
>>>>> "PATH=/sbin:/usr/sbin:/bin:/usr/bin", "SHELL=/bin/sh", "PWD=/"]) = 0
>>>>> uname({sysname="Linux", nodename="LNS",
>>>>> release="4.5.0-09406-g46e595a17dcf", version="#72 Tue May 10 15:41:34
>>>>> CEST 2016", machine="armv5tejl", domainname="(none)"}) = 0
>>>>> brk(0)                                  = 0x153000
>>>>> brk(0x153d20)                           = 0x153d20
>>>>> set_tls(0x1534c0, 0x14d1e4, 0, 0x153d20, 0x14e368) = 0
>>>>> readlink("/proc/self/exe", "/bin/busybox", 4096) = 12
>>>>> brk(0x174d20)                           = 0x174d20
>>>>> brk(0x175000)                           = 0x175000
>>>>> getuid32()                              = 0
>>>>> rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0
>>>>> rt_sigaction(SIGCHLD, NULL, {SIG_DFL, [], 0}, 8) = 0
>>>>> rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
>>>>> nanosleep({1, 0},
>>>>>
>>>>> And the heartbeat led doesn't blink anymore (full on), as if the
>>>>> timers never fire.
>>>>>
>>>>> The platform is an AT91SAM9G35-CM.
>>>>>
>>>>> git bisect gives a merge as the 1st bad commit :(
>>>>> first bad commit: [46e595a17dcf11404f713845ecb5b06b92a94e43] Merge tag
>>>>> 'armsoc-drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
>>>>
>>>>
>>>> I went a little further in tracking that down, starting from the merge
>>>> (1st bad commit) and reverting some commits.
>>>> It seems that the culprit is :
>>>> commit 863a81c3be1d931bdae6426e231add9334311f13
>>>> Author: Boris Brezillon <boris.brezillon@free-electrons.com>
>>>> Date:   Fri Sep 5 09:54:13 2014 +0200
>>>>     clk: at91: make use of syscon to share PMC registers in several drivers
>>>>
>>>> Here are the commits I've reverted :
>>>>
>>>> git log --oneline --decorate -20
>>>> 849cdaa0cf04 (HEAD, tag: good) Revert "clk: at91: make use of syscon
>>>> to share PMC registers in several drivers"
>>>> 4bd6dde95321 (tag: last_bad) Revert "clk: at91: make use of
>>>> syscon/regmap internally"
>>>> a56dacaa24c4 (tag: always_bad) Revert "clk: at91: remove IRQ handling
>>>> and use polling"
>>>> 33edfe7a2de6 Revert "clk: at91: pmc: merge at91_pmc_init in atmel_pmc_probe"
>>>> 0b22bb649eae Revert "clk: at91: pmc: move pmc structures to C file"
>>>> 14994fdff366 Revert "ARM: at91: pm: simply call at91_pm_init"
>>>> 6f0821175327 (tag: still_bad) Revert "ARM: at91: pm: find and remap the pmc"
>>>> b52bbf7fad1b Revert "ARM: at91: pm: move idle functions to pm.c"
>>>> dffb1a5f68b9 Revert "ARM: at91: remove useless includes and function prototypes"
>>>> db352691dcc1 Revert "usb: gadget: atmel: access the PMC using regmap"
>>>> f7b5433dbbc8 Revert "clk: at91: pmc: drop at91_pmc_base"
>>>> 6e6dfc0d91c0 Revert "clk: at91: pmc: remove useless capacities handling"
>>>> ceddd3f88ada Revert "clk: at91: remove useless includes"
>>>> 46e595a17dcf (tag: bad) Merge tag 'armsoc-drivers' of
>>>> git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
>>>> e3b1f64e04f5 Merge tag 'armsoc-defconfig' of
>>>> git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
>>>> 915c56bc01d6 Merge tag 'armsoc-dt64' of
>>>> git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
>>>> 5a6b7e53d035 Merge tag 'armsoc-dt' of
>>>> git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
>>>> 8c6d4082fc6a Merge tag 'armsoc-arm64' of
>>>> git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
>>>> 33b3d2e88c9e Merge tag 'armsoc-soc' of
>>>> git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
>>>> e88fa1b8b00a Merge tag 'armsoc-cleanup' of
>>>> git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
>>>
>>> Thanks for the detailed report.
>>>
>>> Can you try again after applying this patch [1]?
>>>
>>> Regards,
>>>
>>> Boris
>>>
>>> [1]http://code.bulix.org/dx1c0t-98377
>>
>> Yes, it works.
>> Big thumbs up, that was fast !
>>
>> Less than 1 hour between the report and the patch ! :)
>
> Yes, absolutely terrific! Thanks Boris.
>
> I'd like you to test with this instead as it's the real range of the IP:
> + reg = <0xfffffc00 0x110>;
>
> Even I'm pretty confident ;-) Can you please do this for us ?
Unfortunately, I can't test it until Thursday morning.

>> This is clearly 4.6 material (as it's a regression from 4.5), but it's
>> maybe a little late.
>> Anrd, Nicolas, what do you think ?
>
> I sent a PR this morning to Arnd with a "fix"... I hope that he won't be
> annoyed if I send him another one this evening...  But clearly, it's a
> regression and a pretty bad one :-\
>
> Thanks a lot for this report Richard,

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [BISECTED] Regression v4.6-rc1 : nanosleep doesn't return on AT91SAM9
  2016-05-10 15:18       ` Nicolas Ferre
  2016-05-10 19:40         ` Richard Genoud
@ 2016-05-12  6:41         ` Richard Genoud
  1 sibling, 0 replies; 7+ messages in thread
From: Richard Genoud @ 2016-05-12  6:41 UTC (permalink / raw)
  To: Nicolas Ferre
  Cc: Boris Brezillon, Arnd Bergmann, Alexandre Belloni,
	linux-arm-kernel, linux-kernel

2016-05-10 17:18 GMT+02:00 Nicolas Ferre <nicolas.ferre@atmel.com>:
> Le 10/05/2016 16:59, Richard Genoud a écrit :
>> 2016-05-10 16:47 GMT+02:00 Boris Brezillon <boris.brezillon@free-electrons.com>:
>>> Hi Richard,
>>>
>>> On Tue, 10 May 2016 16:25:25 +0200
>>> Richard Genoud <richard.genoud@gmail.com> wrote:
>>>
>>>> 2016-05-10 15:58 GMT+02:00 Richard Genoud <richard.genoud@gmail.com>:
>>>>> Hi,
>>>>>
>>>>> Starting with 4.6-rc1, a sleep 1 doesn't return :
>>>>>
>>>>> execve("/bin/sleep", ["sleep", "1"], ["USER=root", "SHLVL=1",
>>>>> "OLDPWD=/var", "HOME=/", "TERM=vt102",
>>>>> "PATH=/sbin:/usr/sbin:/bin:/usr/bin", "SHELL=/bin/sh", "PWD=/"]) = 0
>>>>> uname({sysname="Linux", nodename="LNS",
>>>>> release="4.5.0-09406-g46e595a17dcf", version="#72 Tue May 10 15:41:34
>>>>> CEST 2016", machine="armv5tejl", domainname="(none)"}) = 0
>>>>> brk(0)                                  = 0x153000
>>>>> brk(0x153d20)                           = 0x153d20
>>>>> set_tls(0x1534c0, 0x14d1e4, 0, 0x153d20, 0x14e368) = 0
>>>>> readlink("/proc/self/exe", "/bin/busybox", 4096) = 12
>>>>> brk(0x174d20)                           = 0x174d20
>>>>> brk(0x175000)                           = 0x175000
>>>>> getuid32()                              = 0
>>>>> rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0
>>>>> rt_sigaction(SIGCHLD, NULL, {SIG_DFL, [], 0}, 8) = 0
>>>>> rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
>>>>> nanosleep({1, 0},
>>>>>
>>>>> And the heartbeat led doesn't blink anymore (full on), as if the
>>>>> timers never fire.
>>>>>
>>>>> The platform is an AT91SAM9G35-CM.
>>>>>
>>>>> git bisect gives a merge as the 1st bad commit :(
>>>>> first bad commit: [46e595a17dcf11404f713845ecb5b06b92a94e43] Merge tag
>>>>> 'armsoc-drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
>>>>
>>>>
>>>> I went a little further in tracking that down, starting from the merge
>>>> (1st bad commit) and reverting some commits.
>>>> It seems that the culprit is :
>>>> commit 863a81c3be1d931bdae6426e231add9334311f13
>>>> Author: Boris Brezillon <boris.brezillon@free-electrons.com>
>>>> Date:   Fri Sep 5 09:54:13 2014 +0200
>>>>     clk: at91: make use of syscon to share PMC registers in several drivers
>>>>
>>>> Here are the commits I've reverted :
>>>>
>>>> git log --oneline --decorate -20
>>>> 849cdaa0cf04 (HEAD, tag: good) Revert "clk: at91: make use of syscon
>>>> to share PMC registers in several drivers"
>>>> 4bd6dde95321 (tag: last_bad) Revert "clk: at91: make use of
>>>> syscon/regmap internally"
>>>> a56dacaa24c4 (tag: always_bad) Revert "clk: at91: remove IRQ handling
>>>> and use polling"
>>>> 33edfe7a2de6 Revert "clk: at91: pmc: merge at91_pmc_init in atmel_pmc_probe"
>>>> 0b22bb649eae Revert "clk: at91: pmc: move pmc structures to C file"
>>>> 14994fdff366 Revert "ARM: at91: pm: simply call at91_pm_init"
>>>> 6f0821175327 (tag: still_bad) Revert "ARM: at91: pm: find and remap the pmc"
>>>> b52bbf7fad1b Revert "ARM: at91: pm: move idle functions to pm.c"
>>>> dffb1a5f68b9 Revert "ARM: at91: remove useless includes and function prototypes"
>>>> db352691dcc1 Revert "usb: gadget: atmel: access the PMC using regmap"
>>>> f7b5433dbbc8 Revert "clk: at91: pmc: drop at91_pmc_base"
>>>> 6e6dfc0d91c0 Revert "clk: at91: pmc: remove useless capacities handling"
>>>> ceddd3f88ada Revert "clk: at91: remove useless includes"
>>>> 46e595a17dcf (tag: bad) Merge tag 'armsoc-drivers' of
>>>> git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
>>>> e3b1f64e04f5 Merge tag 'armsoc-defconfig' of
>>>> git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
>>>> 915c56bc01d6 Merge tag 'armsoc-dt64' of
>>>> git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
>>>> 5a6b7e53d035 Merge tag 'armsoc-dt' of
>>>> git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
>>>> 8c6d4082fc6a Merge tag 'armsoc-arm64' of
>>>> git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
>>>> 33b3d2e88c9e Merge tag 'armsoc-soc' of
>>>> git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
>>>> e88fa1b8b00a Merge tag 'armsoc-cleanup' of
>>>> git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
>>>
>>> Thanks for the detailed report.
>>>
>>> Can you try again after applying this patch [1]?
>>>
>>> Regards,
>>>
>>> Boris
>>>
>>> [1]http://code.bulix.org/dx1c0t-98377
>>
>> Yes, it works.
>> Big thumbs up, that was fast !
>>
>> Less than 1 hour between the report and the patch ! :)
>
> Yes, absolutely terrific! Thanks Boris.
>
> I'd like you to test with this instead as it's the real range of the IP:
> + reg = <0xfffffc00 0x110>;
>
> Even I'm pretty confident ;-) Can you please do this for us ?
It works. Leds are blinking and nanosleep() doesn't block forever.

>> This is clearly 4.6 material (as it's a regression from 4.5), but it's
>> maybe a little late.
>> Anrd, Nicolas, what do you think ?
>
> I sent a PR this morning to Arnd with a "fix"... I hope that he won't be
> annoyed if I send him another one this evening...  But clearly, it's a
> regression and a pretty bad one :-\
>
> Thanks a lot for this report Richard,
you're welcome !


Richard.

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2016-05-12  6:42 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-05-10 13:58 [BISECTED] Regression v4.6-rc1 : nanosleep doesn't return on AT91SAM9 Richard Genoud
2016-05-10 14:25 ` Richard Genoud
2016-05-10 14:47   ` Boris Brezillon
2016-05-10 14:59     ` Richard Genoud
2016-05-10 15:18       ` Nicolas Ferre
2016-05-10 19:40         ` Richard Genoud
2016-05-12  6:41         ` Richard Genoud

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).