Re: [PATCH 0/2] Allow scsi_prep_fn to occur for retried commands

2017-08-21 Thread Abdul Haleem
On Mon, 2017-08-21 at 17:11 -0500, Brian King wrote: > The following two patches address the hang issue being observed > with Bart's patch on powerpc. The first patch moves the initialization > of jiffies_at_alloc from scsi_init_command to scsi_init_rq, and ensures > we don't zero jiffies_at_alloc

Re: 32-bit powerpc, aty128fb: vmap allocation for size 135168 failed

2017-08-21 Thread Michael Ellerman
Meelis Roos writes: >> Meelis Roos writes: >> >> > I was trying 4.13.0-rc5-00075-gac9a40905a61 on my PowerMac G4 with 1G >> > RAM and after some time of sddm respawning and X trying to restart, >> > dmesg is full of messages about vmap allocation failures. >> >> Did it just start happening?

Re: qustion about eeh_add_virt_device

2017-08-21 Thread Russell Currey
On Sun, 2017-08-13 at 16:54 +0200, Julia Lawall wrote: > Hello, Hello, sorry for the delayed response. > > At the suggestion of Christoph Hellwig, I am working on inlining the > functions stored in the err_handler field of a pci_driver structure into > the pci_driver structure itself. A number

Re: [PATCH v2 2/5] powerpc: pseries: vio: match parent nodes with of_find_node_by_path

2017-08-21 Thread Michael Ellerman
Rob Herring writes: > In preparation to remove the full path from device_node.full_name, use > of_find_node_by_path instead of open coding with strcmp. > > Signed-off-by: Rob Herring > Cc: Benjamin Herrenschmidt > Cc: Paul Mackerras > Cc: Michael Ellerman > Cc: linuxppc-dev@lists.ozlabs.org >

Re: [PATCH 5/6] powerpc/mm: Optimize detection of thread local mm's

2017-08-21 Thread Michael Ellerman
Frederic Barrat writes: > Hi Ben, > > Le 24/07/2017 à 06:28, Benjamin Herrenschmidt a écrit : >> Instead of comparing the whole CPU mask every time, let's >> keep a counter of how many bits are set in the mask. Thus >> testing for a local mm only requires testing if that counter >> is 1 and the c

Re: [PATCH v3 1/3] powerpc/mm: Add marker for contexts requiring global TLB invalidations

2017-08-21 Thread Alistair Popple
For what it's worth this worked fine when testing with the NPU as well. Tested-by: Alistair Popple On Thu, 3 Aug 2017 05:16:35 PM Balbir Singh wrote: > On Thu, Aug 3, 2017 at 6:29 AM, Frederic Barrat > wrote: > > Introduce a new 'flags' attribute per context and define its first bit > > to be a

Re: [PATCH v3 2/3] cxl: Mark context requiring global TLBIs

2017-08-21 Thread Alistair Popple
On Thu, 3 Aug 2017 05:22:31 PM Balbir Singh wrote: > On Thu, Aug 3, 2017 at 6:29 AM, Frederic Barrat > wrote: > > The PSL and XSL need to see all TLBIs pertinent to the memory contexts > > used on the adapter. For the hash memory model, it is done by making > > all TLBIs global as soon as the cxl

[PATCH resend] timers: Fix excessive granularity of new timers after a nohz idle

2017-08-21 Thread Nicholas Piggin
When a timer base is idle, it is forwarded when a new timer is added to ensure that granularity does not become excessive. When not idle, the timer tick is expected to increment the base. However there are several problems: - If an existing timer is modified, the base is forwarded only after th

[PATCH] powerpc/64s: Fix replay interrupt return label name

2017-08-21 Thread Michael Ellerman
In __replay_interrupt() we take the address of a local label so we can return to it later. However the assembler turns the local label into a symbol with a name like ".L1^B42" - where "^B" is literally "\002". This does not make for pleasant stack traces. Fix it by giving the label a sensible name.

Re: [PATCH v2 17/20] perf: Add a speculative page fault sw event

2017-08-21 Thread Michael Ellerman
Anshuman Khandual writes: > On 08/18/2017 03:35 AM, Laurent Dufour wrote: >> Add a new software event to count succeeded speculative page faults. >> >> Signed-off-by: Laurent Dufour > > Should be merged with the next patch. No it shouldn't. cheers

Re: [PATCH 1/2] powerpc/workqueue: update list of possible CPUs

2017-08-21 Thread Michael Ellerman
Tejun Heo writes: > On Mon, Aug 21, 2017 at 03:49:50PM +0200, Laurent Vivier wrote: >> In wq_numa_init() a list of NUMA nodes with their list of possible CPUs >> is built. >> >> Unfortunately, on powerpc, the Firmware is only able to provide the >> node of a CPU if the CPU is present. So, in our

[no subject]

2017-08-21 Thread Nicholas Piggin
Date: Sun, 20 Aug 2017 13:16:16 +1000 Subject: [PATCH] timers: Fix excessive granularity of new timers after a nohz idle When a timer base is idle, it is forwarded when a new timer is added to ensure that granularity does not become excessive. When not idle, the timer tick is expected to incremen

Re: [PATCH v2 00/20] Speculative page faults

2017-08-21 Thread Paul E. McKenney
On Mon, Aug 21, 2017 at 11:58:03AM +0530, Anshuman Khandual wrote: > On 08/18/2017 03:34 AM, Laurent Dufour wrote: > > This is a port on kernel 4.13 of the work done by Peter Zijlstra to > > handle page fault without holding the mm semaphore [1]. > > > > The idea is to try to handle user space pag

Re: RCU lockup issues when CONFIG_SOFTLOCKUP_DETECTOR=n - any one else seeing this?

2017-08-21 Thread Paul E. McKenney
On Mon, Aug 21, 2017 at 10:52:58AM +1000, Nicholas Piggin wrote: > On Sun, 20 Aug 2017 14:14:29 -0700 > "Paul E. McKenney" wrote: > > > On Sun, Aug 20, 2017 at 11:35:14AM -0700, Paul E. McKenney wrote: > > > On Sun, Aug 20, 2017 at 11:00:40PM +1000, Nicholas Piggin wrote: > > > > On Sun, 20 Aug

[PATCHv2 1/2] scsi: Move scsi_cmd->jiffies_at_alloc initialization to allocation time

2017-08-21 Thread Brian King
This second version also sets up jiffies_at_alloc in scsi_init_request. This has been tested without the second patch in the series and I've confirmed I now see the following in the logs after booting: [ 121.718088] sd 1:2:0:0: timing out command, waited 120s [ 121.798081] sd 1:2:1:0: timing out

Re: [PATCH 1/2] scsi: Move scsi_cmd->jiffies_at_alloc initialization to allocation time

2017-08-21 Thread Brian King
Scratch this one... Version 2 on the way with the corresponding changes in scsi_init_request... -Brian -- Brian King Power Linux I/O IBM Linux Technology Center

[PATCH 2/2] scsi: Preserve retry counter through scsi_prep_fn

2017-08-21 Thread Brian King
Save / restore the retry counter in scsi_cmd in scsi_init_command. This allows us to go back through scsi_init_command for retries and not forget we are doing a retry. Signed-off-by: Brian King --- Index: linux-2.6.git/drivers/scsi/scsi_lib.c =

[PATCH 1/2] scsi: Move scsi_cmd->jiffies_at_alloc initialization to allocation time

2017-08-21 Thread Brian King
Move the initialization of scsi_cmd->jiffies_at_alloc to allocation time rather than prep time. Also ensure that jiffies_at_alloc is preserved when we go through prep. This lets us send retries through prep again and not break the overall retry timer logic in scsi_softirq_done. Suggested-by: Bart

[PATCH 0/2] Allow scsi_prep_fn to occur for retried commands

2017-08-21 Thread Brian King
The following two patches address the hang issue being observed with Bart's patch on powerpc. The first patch moves the initialization of jiffies_at_alloc from scsi_init_command to scsi_init_rq, and ensures we don't zero jiffies_at_alloc in scsi_init_command. The second patch saves / restores the r

[PATCH V9 2/2] powerpc/nodes: Ensure enough nodes avail for operations

2017-08-21 Thread Michael Bringmann
To: linuxppc-dev@lists.ozlabs.org From: Michael Bringmann To: linux-ker...@vger.kernel.org Cc: Michael Ellerman Cc: Michael Bringmann Cc: John Allen Cc: Nathan Fontenot Subject: [PATCH V9 2/2] powerpc/nodes: Ensure enough nodes avail for operations powerpc/nodes: On systems like PowerPC whi

[PATCH V9 1/2] powerpc/numa: Update CPU topology when VPHN enabled

2017-08-21 Thread Michael Bringmann
powerpc/numa: Correct the currently broken capability to set the topology for shared CPUs in LPARs. At boot time for shared CPU lpars, the topology for each shared CPU is set to node zero, however, this is now updated correctly using the Virtual Processor Home Node (VPHN) capabilities information

[PATCH V9 0/2] powerpc/dlpar: Correct display of hot-add/hot-remove CPUs and memory

2017-08-21 Thread Michael Bringmann
On Power systems with shared configurations of CPUs and memory, there are some issues with association of additional CPUs and memory to nodes when hot-adding resources. These patches address some of those problems. powerpc/numa: Correct the currently broken capability to set the topology for sha

Re: [PATCH] mtd: nand: Rename nand.h into rawnand.h

2017-08-21 Thread Boris Brezillon
Le Fri, 4 Aug 2017 17:29:09 +0200, Boris Brezillon a écrit : > We are planning to share more code between different NAND based > devices (SPI NAND, OneNAND and raw NANDs), but before doing that > we need to move the existing include/linux/mtd/nand.h file into > include/linux/mtd/rawnand.h so we

Re: RCU lockup issues when CONFIG_SOFTLOCKUP_DETECTOR=n - any one else seeing this?

2017-08-21 Thread David Miller
From: Nicholas Piggin Date: Tue, 22 Aug 2017 00:19:28 +1000 > Thanks here's an updated version with a couple more bugs fixed. If > you could try testing, that would be much appreciated. I'm not getting RCU stalls on sparc64 any longer with this patch. I'm really happy you guys were able to figu

Re: [BUG][bisected 270065e] linux-next fails to boot on powerpc

2017-08-21 Thread Martin K. Petersen
Brian, >> Thanks for the detailed analysis. This is very helpful. Have you >> considered to change the ipr driver such that it terminates REPORT >> SUPPORTED OPERATION CODES commands with the appropriate check >> condition code instead of DID_ERROR? > > Yes. That data is actually in the sense buf

Re: [PATCH] ipr: Set no_report_opcodes for RAID arrays

2017-08-21 Thread Martin K. Petersen
Brian, > Since ipr RAID arrays do not support the MAINTENANCE_IN / > MI_REPORT_SUPPORTED_OPERATION_CODES, set no_report_opcodes to prevent > it from being sent. Applied to 4.13/scsi-fixes. Thank you! -- Martin K. Petersen Oracle Linux Engineering

Re: [v3,3/3] powerpc/mm/cxl: Add the fault handling cpu to mm cpumask

2017-08-21 Thread Benjamin Herrenschmidt
On Mon, 2017-08-21 at 23:39 +1000, Michael Ellerman wrote: > On Thu, 2017-07-27 at 06:24:55 UTC, "Aneesh Kumar K.V" wrote: > > We use mm cpumask for serializing against lockless page table walk. Anybody > > who is doing a lockless page table walk is expected to disable irq and only > > cpus in mm c

Re: [PATCH 4/6] dpaa_eth: add NETIF_F_RXHASH

2017-08-21 Thread David Miller
From: Madalin Bucur Date: Fri, 18 Aug 2017 11:56:26 +0300 > + if (net_dev->features & NETIF_F_RXHASH && priv->keygen_in_use && > + !fman_port_get_hash_result_offset(priv->mac_dev->port[RX], > + &hash_offset)) > + skb_set_hash(skb,

Re: [PATCH 5/6] powerpc/mm: Optimize detection of thread local mm's

2017-08-21 Thread Benjamin Herrenschmidt
On Mon, 2017-08-21 at 19:27 +0200, Frederic Barrat wrote: > Hi Ben, > > Le 24/07/2017 à 06:28, Benjamin Herrenschmidt a écrit : > > Instead of comparing the whole CPU mask every time, let's > > keep a counter of how many bits are set in the mask. Thus > > testing for a local mm only requires testi

Re: [PATCH 5/6] powerpc/mm: Optimize detection of thread local mm's

2017-08-21 Thread Frederic Barrat
Hi Ben, Le 24/07/2017 à 06:28, Benjamin Herrenschmidt a écrit : Instead of comparing the whole CPU mask every time, let's keep a counter of how many bits are set in the mask. Thus testing for a local mm only requires testing if that counter is 1 and the current CPU bit is set in the mask. I'm

[PATCH v2 5/5] of/fdt: only store the device node basename in full_name

2017-08-21 Thread Rob Herring
With dependencies on a statically allocated full path name converted to use %pOF format specifier, we can store just the basename of node, and the unflattening of the FDT can be simplified. This commit will affect the remaining users of full_name. After analyzing these users, the remaining cases s

[PATCH v2 4/5] powerpc: pseries: only store the device node basename in full_name

2017-08-21 Thread Rob Herring
With dependencies on full_name containing the entire device node path removed, stop storing the full_name in nodes created by dlpar_configure_connector() and pSeries_reconfig_add_node(). Signed-off-by: Rob Herring Cc: Benjamin Herrenschmidt Cc: Paul Mackerras Cc: Michael Ellerman Cc: linuxppc-

[PATCH v2 3/5] powerpc: pseries: remove dlpar_attach_node dependency on full path

2017-08-21 Thread Rob Herring
In preparation to stop storing the full node path in full_name, remove the dependency on full_name from dlpar_attach_node(). Callers of dlpar_attach_node() already have the parent device_node, so just pass the parent node into dlpar_attach_node instead of the path. This avoids doing a lookup of the

[PATCH v2 1/5] powerpc: Convert to using %pOF instead of full_name

2017-08-21 Thread Rob Herring
Now that we have a custom printf format specifier, convert users of full_name to use %pOF instead. This is preparation to remove storing of the full path string for each node. Signed-off-by: Rob Herring Cc: Benjamin Herrenschmidt Cc: Paul Mackerras Cc: Michael Ellerman Cc: Anatolij Gustschin

[PATCH v2 2/5] powerpc: pseries: vio: match parent nodes with of_find_node_by_path

2017-08-21 Thread Rob Herring
In preparation to remove the full path from device_node.full_name, use of_find_node_by_path instead of open coding with strcmp. Signed-off-by: Rob Herring Cc: Benjamin Herrenschmidt Cc: Paul Mackerras Cc: Michael Ellerman Cc: linuxppc-dev@lists.ozlabs.org --- v2: - rebased to linux-next and re

[PATCH v2 0/5] Removing full paths from DT full_name

2017-08-21 Thread Rob Herring
This series is the last steps to remove storing the full path for every DT node. Instead, we can create full path strings dynamically as needed with printf %pOF specifiers (commit ce4fecf1fe15). There are a number of remaining direct users of full_name after this series. I don't believe there shoul

Re: RCU lockup issues when CONFIG_SOFTLOCKUP_DETECTOR=n - any one else seeing this?

2017-08-21 Thread Jonathan Cameron
On Tue, 22 Aug 2017 00:19:28 +1000 Nicholas Piggin wrote: > On Mon, 21 Aug 2017 11:18:33 +0100 > Jonathan Cameron wrote: > > > On Mon, 21 Aug 2017 16:06:05 +1000 > > Nicholas Piggin wrote: > > > > > On Mon, 21 Aug 2017 10:52:58 +1000 > > > Nicholas Piggin wrote: > > > > > > > On Sun,

Re: [PATCH 2/2] blk-mq: don't use WORK_CPU_UNBOUND

2017-08-21 Thread Tejun Heo
On Mon, Aug 21, 2017 at 03:49:51PM +0200, Laurent Vivier wrote: > cpumask is the list of CPUs present when the queue is built. > If a new CPU is hotplugged, this list is not updated, > and when the scheduler asks for a CPU id, blk_mq_hctx_next_cpu() > can return WORK_CPU_UNBOUND. > And in this case

Re: [PATCH 1/2] powerpc/workqueue: update list of possible CPUs

2017-08-21 Thread Tejun Heo
On Mon, Aug 21, 2017 at 03:49:50PM +0200, Laurent Vivier wrote: > In wq_numa_init() a list of NUMA nodes with their list of possible CPUs > is built. > > Unfortunately, on powerpc, the Firmware is only able to provide the > node of a CPU if the CPU is present. So, in our case (possible CPU) > CPU

Re: RCU lockup issues when CONFIG_SOFTLOCKUP_DETECTOR=n - any one else seeing this?

2017-08-21 Thread Nicholas Piggin
On Mon, 21 Aug 2017 11:18:33 +0100 Jonathan Cameron wrote: > On Mon, 21 Aug 2017 16:06:05 +1000 > Nicholas Piggin wrote: > > > On Mon, 21 Aug 2017 10:52:58 +1000 > > Nicholas Piggin wrote: > > > > > On Sun, 20 Aug 2017 14:14:29 -0700 > > > "Paul E. McKenney" wrote: > > > > > > > On Su

[PATCH 2/2] blk-mq: don't use WORK_CPU_UNBOUND

2017-08-21 Thread Laurent Vivier
cpumask is the list of CPUs present when the queue is built. If a new CPU is hotplugged, this list is not updated, and when the scheduler asks for a CPU id, blk_mq_hctx_next_cpu() can return WORK_CPU_UNBOUND. And in this case _blk_mq_run_hw_queue() can be executed by the new CPU (that is not presen

[PATCH 1/2] powerpc/workqueue: update list of possible CPUs

2017-08-21 Thread Laurent Vivier
In wq_numa_init() a list of NUMA nodes with their list of possible CPUs is built. Unfortunately, on powerpc, the Firmware is only able to provide the node of a CPU if the CPU is present. So, in our case (possible CPU) CPU ids are known, but as the CPU is not present, the node id is unknown and all

Re: [v3, 3/3] powerpc/mm/cxl: Add the fault handling cpu to mm cpumask

2017-08-21 Thread Michael Ellerman
On Thu, 2017-07-27 at 06:24:55 UTC, "Aneesh Kumar K.V" wrote: > We use mm cpumask for serializing against lockless page table walk. Anybody > who is doing a lockless page table walk is expected to disable irq and only > cpus in mm cpumask is expected do the lockless walk. This ensure that > a THP s

Re: [v3,2/3] powerpc/mm: Don't send IPI to all cpus on THP updates

2017-08-21 Thread Michael Ellerman
On Thu, 2017-07-27 at 06:24:54 UTC, "Aneesh Kumar K.V" wrote: > Now that we made sure that lockless walk of linux page table is mostly > limitted > to current task(current->mm->pgdir) we can update the THP update sequence to > only send IPI to cpus on which this task has run. This helps in reducin

Re: [v3,1/3] powerpc/mm: Rename find_linux_pte_or_hugepte

2017-08-21 Thread Michael Ellerman
On Thu, 2017-07-27 at 06:24:53 UTC, "Aneesh Kumar K.V" wrote: > Add newer helpers to make the function usage simpler. It is always recommended > to use find_current_mm_pte() for walking the page table. If we cannot use > find_current_mm_pte(), it should be documented why the said usage of > __find_

Re: [v2] macintosh: rack-meter: make of_device_ids const.

2017-08-21 Thread Michael Ellerman
On Mon, 2017-06-19 at 05:44:25 UTC, Arvind Yadav wrote: > of_device_ids are not supposed to change at runtime. All functions > working with of_device_ids provided by work with const > of_device_ids. So mark the non-const structs as const. > > File size before: >text data bss

[PATCH] i2c: busses: make i2c_adapter_quirks const

2017-08-21 Thread Bhumika Goyal
Make these const as they are only stored as a reference in the quirks field of an i2c_adapter structure, which is const. Done using Coccinelle: @match disable optional_qualifier@ identifier s; @@ static struct i2c_adapter_quirks s = {...}; @ref@ position p; identifier match.s; @@ s@p @good1@ ide

Re: [linux-next][bisected c64e09ce] sysctl command hung indefinitely

2017-08-21 Thread Stephen Rothwell
Hi Michal, On Mon, 21 Aug 2017 09:50:01 +0200 Michal Hocko wrote: > > commit 69885605ee3ba681deb54021e3df645f46589ba1 > Author: Michal Hocko > Date: Mon Aug 21 09:46:04 2017 +0200 > > mmotm: mm-page_alloc-rip-out-zonelist_order_zone-fix > > Abdul has noticed that reading sysctl v

Re: [PATCH v7 3/4] lib/cmdline.c Remove quotes symmetrically.

2017-08-21 Thread Michal Suchánek
On Mon, 21 Aug 2017 18:27:12 +0800 Baoquan He wrote: > On 08/17/17 at 10:14pm, Michal Suchanek wrote: > > Remove quotes from argument value only if there is qoute on both > > sides. > > > > Signed-off-by: Michal Suchanek > > Sounds reasonable. Just for curiosity, do we have chance to pass in

Re: [PATCH v2 1/1] Split VGA default device handler out of VGA arbiter

2017-08-21 Thread Lorenzo Pieralisi
On Thu, Aug 17, 2017 at 09:30:28PM +1000, Daniel Axtens wrote: > A system without PCI legacy resources (e.g. ARM64) may find that no > default/boot VGA device has been marked, because the VGA arbiter > checks for legacy resource decoding before marking a card as default. I do not understand this p

Re: [PATCH v7 3/4] lib/cmdline.c Remove quotes symmetrically.

2017-08-21 Thread Baoquan He
On 08/17/17 at 10:14pm, Michal Suchanek wrote: > Remove quotes from argument value only if there is qoute on both sides. > > Signed-off-by: Michal Suchanek Sounds reasonable. Just for curiosity, do we have chance to pass in option with a single '"'? > --- > arch/powerpc/kernel/fadump.c | 6 ++-

Re: RCU lockup issues when CONFIG_SOFTLOCKUP_DETECTOR=n - any one else seeing this?

2017-08-21 Thread Jonathan Cameron
On Mon, 21 Aug 2017 16:06:05 +1000 Nicholas Piggin wrote: > On Mon, 21 Aug 2017 10:52:58 +1000 > Nicholas Piggin wrote: > > > On Sun, 20 Aug 2017 14:14:29 -0700 > > "Paul E. McKenney" wrote: > > > > > On Sun, Aug 20, 2017 at 11:35:14AM -0700, Paul E. McKenney wrote: > > > > On Sun, Aug

Re: [PATCH v2 17/20] perf: Add a speculative page fault sw event

2017-08-21 Thread Anshuman Khandual
On 08/18/2017 03:35 AM, Laurent Dufour wrote: > Add a new software event to count succeeded speculative page faults. > > Signed-off-by: Laurent Dufour Should be merged with the next patch.

Re: [PATCH v2 18/20] perf tools: Add support for the SPF perf event

2017-08-21 Thread Anshuman Khandual
On 08/18/2017 03:35 AM, Laurent Dufour wrote: > Add support for the new speculative faults event. > > Signed-off-by: Laurent Dufour > --- > tools/include/uapi/linux/perf_event.h | 1 + > tools/perf/util/evsel.c | 1 + > tools/perf/util/parse-events.c| 4 > tools/perf/u

Re: [linux-next][bisected c64e09ce] sysctl command hung indefinitely

2017-08-21 Thread Abdul Haleem
On Mon, 2017-08-21 at 09:50 +0200, Michal Hocko wrote: > On Sat 19-08-17 15:49:31, Abdul Haleem wrote: > > Hi Michal, > > > > 'sysctl -a' command never completes on my PowerPC machine with latest > > next kernel (As of next-20170811) > > > > Machine Type : Power8 bare-metal > > Kernel version : 4

Re: [linux-next][bisected c64e09ce] sysctl command hung indefinitely

2017-08-21 Thread Michal Hocko
On Sat 19-08-17 15:49:31, Abdul Haleem wrote: > Hi Michal, > > 'sysctl -a' command never completes on my PowerPC machine with latest > next kernel (As of next-20170811) > > Machine Type : Power8 bare-metal > Kernel version : 4.13.0-rc4-next-20170817 > gcc version : 4.8.5 > > > command output >

Re: [PATCH v2 19/20] x86/mm: Add speculative pagefault handling

2017-08-21 Thread Anshuman Khandual
On 08/18/2017 03:35 AM, Laurent Dufour wrote: > From: Peter Zijlstra > > Try a speculative fault before acquiring mmap_sem, if it returns with > VM_FAULT_RETRY continue with the mmap_sem acquisition and do the > traditional fault. > > Signed-off-by: Peter Zijlstra (Intel) > > [Clearing of FAUL

Re: [PATCH v2 20/20] powerpc/mm: Add speculative page fault

2017-08-21 Thread Anshuman Khandual
On 08/18/2017 03:35 AM, Laurent Dufour wrote: > This patch enable the speculative page fault on the PowerPC > architecture. > > This will try a speculative page fault without holding the mmap_sem, > if it returns with WM_FAULT_RETRY, the mmap_sem is acquired and the s/WM_FAULT_RETRY/VM_FAULT_RETR