summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* net: ethernet: mediatek: get hw lro capability by the chip id instead of by ↵Nelson Chang2016-10-072-2/+13
| | | | | | | | | | the dtsi Because hw lro started to be supported from MT7623, the proper way to check if the feature is capable is to judge by the chip id instead of by the dtsi. Signed-off-by: Nelson Chang <nelson.chang@mediatek.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* net: ethernet: mediatek: get the chip id by ETHDMASYS registersNelson Chang2016-10-072-0/+34
| | | | | | | | The driver gets the chip id by ETHSYS_CHIPID0_3/ETHSYS_CHIPID4_7 registers in mtk_probe(). Signed-off-by: Nelson Chang <nelson.chang@mediatek.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* Merge tag 'rxrpc-rewrite-20161004' of ↵David S. Miller2016-10-0712-117/+252
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs David Howells says: ==================== rxrpc: Fixes This set of patches contains a bunch of fixes: (1) Fix an oops on incoming call to a local endpoint without a bound service. (2) Only ping for a lost reply in a client call (this is inapplicable to service calls). (3) Fix maybe uninitialised variable warnings in the ACK/ABORT sending function by splitting it. (4) Fix loss of PING RESPONSE ACKs due to them being subsumed by PING ACK generation. (5) OpenAFS improperly terminates calls it makes as a client under some circumstances by not fully hard-ACK'ing the last DATA packets. This is alleviated by a new call appearing on the same channel implicitly completing the previous call on that channel. Handle this implicit completion. (6) Properly handle expiry of service calls due to the aforementioned improper termination with no follow up call to implicitly complete it: (a) The call's background processor needs to be queued to complete the call, send an abort and notify the socket. (b) The call's background processor needs to notify the socket (or the kernel service) when it has completed the call. (c) A negative error code must thence be returned to the kernel service so that it knows the call died. (d) The AFS filesystem must detect the fatal error and end the call. (7) Must produce a DELAY ACK when the actual service operation takes a while to process and must cancel the ACK when the reply is ready. (8) Don't request an ACK on the last DATA packet of the Tx phase as this confuses OpenAFS. ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
| * rxrpc: Don't request an ACK on the last DATA packet of a call's Tx phaseDavid Howells2016-10-061-5/+6
| | | | | | | | | | | | | | | | | | | | | | | | Don't request an ACK on the last DATA packet of a call's Tx phase as for a client there will be a reply packet or some sort of ACK to shift phase. If the ACK is requested, OpenAFS sends a REQUESTED-ACK ACK with soft-ACKs in it and doesn't follow up with a hard-ACK. If we don't set the flag, OpenAFS will send a DELAY ACK that hard-ACKs the reply data, thereby allowing the call to terminate cleanly. Signed-off-by: David Howells <dhowells@redhat.com>
| * rxrpc: Need to produce an ACK for service op if op takes a long timeDavid Howells2016-10-065-6/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We need to generate a DELAY ACK from the service end of an operation if we start doing the actual operation work and it takes longer than expected. This will hard-ACK the request data and allow the client to release its resources. To make this work: (1) We have to set the ack timer and propose an ACK when the call moves to the RXRPC_CALL_SERVER_ACK_REQUEST and clear the pending ACK and cancel the timer when we start transmitting the reply (the first DATA packet of the reply implicitly ACKs the request phase). (2) It must be possible to set the timer when the caller is holding call->state_lock, so split the lock-getting part of the timer function out. (3) Add trace notes for the ACK we're requesting and the timer we clear. Signed-off-by: David Howells <dhowells@redhat.com>
| * afs: Check for fatal error when in waiting for ack stateDavid Howells2016-10-061-1/+1
| | | | | | | | | | | | | | | | | | When it's in the waiting-for-ACK state, the AFS filesystem needs to check the result of rxrpc_kernel_recv_data() any time it is notified to see if it is indicating a fatal error. If this is the case, it needs to mark the call completed otherwise the call just sits there and never goes away. Signed-off-by: David Howells <dhowells@redhat.com>
| * rxrpc: Return negative error code to kernel serviceDavid Howells2016-10-061-1/+1
| | | | | | | | | | | | | | | | In rxrpc_kernel_recv_data(), when we return the error number incurred by a failed call, we must negate it before returning it as it's stored as positive (that's what we have to pass back to userspace). Signed-off-by: David Howells <dhowells@redhat.com>
| * rxrpc: Add missing notificationDavid Howells2016-10-061-0/+1
| | | | | | | | | | | | | | | | The call's background processor work item needs to notify the socket when it completes a call so that recvmsg() or the AFS fs can deal with it. Without this, call expiry isn't handled. Signed-off-by: David Howells <dhowells@redhat.com>
| * rxrpc: Queue the call on expiryDavid Howells2016-10-061-4/+6
| | | | | | | | | | | | | | | | When a call expires, it must be queued for the background processor to deal with otherwise a service call that is improperly terminated will just sit there awaiting an ACK and won't expire. Signed-off-by: David Howells <dhowells@redhat.com>
| * rxrpc: Partially handle OpenAFS's improper termination of callsDavid Howells2016-10-061-0/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | OpenAFS doesn't always correctly terminate client calls that it makes - this includes calls the OpenAFS servers make to the cache manager service. It should end the client call with either: (1) An ACK that has firstPacket set to one greater than the seq number of the reply DATA packet with the LAST_PACKET flag set (thereby hard-ACK'ing all packets). nAcks should be 0 and acks[] should be empty (ie. no soft-ACKs). (2) An ACKALL packet. OpenAFS, though, may send an ACK packet with firstPacket set to the last seq number or less and soft-ACKs listed for all packets up to and including the last DATA packet. The transmitter, however, is obliged to keep the call live and the soft-ACK'd DATA packets around until they're hard-ACK'd as the receiver is permitted to drop any merely soft-ACK'd packet and request retransmission by sending an ACK packet with a NACK in it. Further, OpenAFS will also terminate a client call by beginning the next client call on the same connection channel. This implicitly completes the previous call. This patch handles implicit ACK of a call on a channel by the reception of the first packet of the next call on that channel. If another call doesn't come along to implicitly ACK a call, then we have to time the call out. There are some bugs there that will be addressed in subsequent patches. Signed-off-by: David Howells <dhowells@redhat.com>
| * rxrpc: Fix loss of PING RESPONSE ACK production due to PING ACKsDavid Howells2016-10-068-29/+82
| | | | | | | | | | | | | | | | | | | | | | | | Separate the output of PING ACKs from the output of other sorts of ACK so that if we receive a PING ACK and schedule transmission of a PING RESPONSE ACK, the response doesn't get cancelled by a PING ACK we happen to be scheduling transmission of at the same time. If a PING RESPONSE gets lost, the other side might just sit there waiting for it and refuse to proceed otherwise. Signed-off-by: David Howells <dhowells@redhat.com>
| * rxrpc: Fix warning by splitting rxrpc_send_call_packet()David Howells2016-10-068-84/+102
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Split rxrpc_send_data_packet() to separate ACK generation (which is more complicated) from ABORT generation. This simplifies the code a bit and fixes the following warning: In file included from ../net/rxrpc/output.c:20:0: net/rxrpc/output.c: In function 'rxrpc_send_call_packet': net/rxrpc/ar-internal.h:1187:27: error: 'top' may be used uninitialized in this function [-Werror=maybe-uninitialized] net/rxrpc/output.c:103:24: note: 'top' was declared here net/rxrpc/output.c:225:25: error: 'hard_ack' may be used uninitialized in this function [-Werror=maybe-uninitialized] Reported-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: David Howells <dhowells@redhat.com>
| * rxrpc: Only ping for lost reply in client callDavid Howells2016-10-061-1/+2
| | | | | | | | | | | | | | | | When a reply is deemed lost, we send a ping to find out the other end received all the request data packets we sent. This should be limited to client calls and we shouldn't do this on service calls. Signed-off-by: David Howells <dhowells@redhat.com>
| * rxrpc: Fix oops on incoming call to serviceless endpointDavid Howells2016-10-061-1/+1
| | | | | | | | | | | | | | | | If an call comes in to a local endpoint that isn't listening for any incoming calls at the moment, an oops will happen. We need to check that the local endpoint's service pointer isn't NULL before we dereference it. Signed-off-by: David Howells <dhowells@redhat.com>
| * rxrpc: Fix duplicate constDavid Howells2016-10-062-2/+2
| | | | | | | | | | | | Remove a duplicate const keyword. Signed-off-by: David Howells <dhowells@redhat.com>
| * rxrpc: Accesses of rxrpc_local::service need to be RCU managedDavid Howells2016-10-061-2/+2
| | | | | | | | | | | | | | | | | | struct rxrpc_local->service is marked __rcu - this means that accesses of it need to be managed using RCU wrappers. There are two such places in rxrpc_release_sock() where the value is checked and cleared. Fix this by using the appropriate wrappers. Signed-off-by: David Howells <dhowells@redhat.com>
* | net: bgmac: Fix errant feature flag checkJon Mason2016-10-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | During the conversion to the feature flags, a check against ci->id != BCMA_CHIP_ID_BCM47162 became bgmac->feature_flags & BGMAC_FEAT_CLKCTLS instead of !(bgmac->feature_flags & BGMAC_FEAT_CLKCTLS) Reported-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: Jon Mason <jon.mason@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | netlink: do not enter direct reclaim from netlink_dump()Eric Dumazet2016-10-071-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since linux-3.15, netlink_dump() can use up to 16384 bytes skb allocations. Due to struct skb_shared_info ~320 bytes overhead, we end up using order-3 (on x86) page allocations, that might trigger direct reclaim and add stress. The intent was really to attempt a large allocation but immediately fallback to a smaller one (order-1 on x86) in case of memory stress. On recent kernels (linux-4.4), we can remove __GFP_DIRECT_RECLAIM to meet the goal. Old kernels would need to remove __GFP_WAIT While we are at it, since we do an order-3 allocation, allow to use all the allocated bytes instead of 16384 to reduce syscalls during large dumps. iproute2 already uses 32KB recvmsg() buffer sizes. Alexei provided an initial patch downsizing to SKB_WITH_OVERHEAD(16384) Fixes: 9063e21fb026 ("netlink: autosize skb lengthes") Signed-off-by: Eric Dumazet <edumazet@google.com> Reported-by: Alexei Starovoitov <ast@kernel.org> Cc: Greg Thelen <gthelen@google.com> Reviewed-by: Greg Rose <grose@lightfleet.com> Acked-by: Alexei Starovoitov <ast@kernel.org> Signed-off-by: David S. Miller <davem@davemloft.net>
* | packet: call fanout_release, while UNREGISTERING a netdevAnoob Soman2016-10-071-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | If a socket has FANOUT sockopt set, a new proto_hook is registered as part of fanout_add(). When processing a NETDEV_UNREGISTER event in af_packet, __fanout_unlink is called for all sockets, but prot_hook which was registered as part of fanout_add is not removed. Call fanout_release, on a NETDEV_UNREGISTER, which removes prot_hook and removes fanout from the fanout_list. This fixes BUG_ON(!list_empty(&dev->ptype_specific)) in netdev_run_todo() Signed-off-by: Anoob Soman <anoob.soman@citrix.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | devicetree: net: micrel-ksz90x1.txt: Properly explain skew settingsMike Looijmans2016-10-071-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The KSZ9031 skew registers contain an offset, the chip's default value is "neutral" which does not add any skew. Programming a 0 into a skew property will actually set it the maximal negative adjustment and not to a neutral position as one would expect. Explain this situation in the devicetree binding documentation and list the settings that the chip considers neutral. Changing the implementation to accept negative values would have been a better solution, but would break existing configurations. Signed-off-by: Mike Looijmans <mike.looijmans@topic.nl> Reviewed-by: Florian Fainelli <f.fainelli@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | net: phy: Add Wake-on-LAN driver for Microsemi PHYs.Raju Lakkaraju2016-10-071-0/+128
| | | | | | | | | | | | | | | | | | | | | | | | | | Wake-on-LAN (WoL) is an Ethernet networking standard that allows a computer/device to be turned on or awakened by a network message. VSC8531 PHY can support this feature configure by driver set function. WoL status get by driver get function. Tested on Beaglebone Black with VSC 8531 PHY. Signed-off-by: Raju Lakkaraju <Raju.Lakkaraju@microsemi.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | dt-bindings: net: renesas-ravb: Add support for R8A7796 RAVBLaurent Pinchart2016-10-071-1/+2
| | | | | | | | | | | | | | | | Add a new compatible string for the R8A7796 (M3-W) RAVB. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: David S. Miller <davem@davemloft.net>
* | drivers: net: cpsw-phy-sel: add support to configure rgmii internal delayMugunthan V N2016-10-071-0/+14
| | | | | | | | | | | | | | | | Add support to enable CPSW RGMII internal delay (id mode) bits when rgmii internal delay is configured in phy. Signed-off-by: Mugunthan V N <mugunthanvnm@ti.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | net: hns: Add missing \n to end of dev_err messages, tidy up textColin Ian King2016-10-071-11/+11
| | | | | | | | | | | | | | | | | | Trival fix, dev_err messages are missing a \n, so add it. Also fix grammer, spelling mistake and add white spaces to various error messages. Signed-off-by: Colin Ian King <colin.king@canonical.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | net: ps3_gelic: Add missing \n to end of deb_dbg messageColin Ian King2016-10-071-1/+1
| | | | | | | | | | | | | | Trival fix, dev_dbg message is missing a \n, so add it. Signed-off-by: Colin Ian King <colin.king@canonical.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | net: axienet: Add missing \n to end of dev_err messagesColin Ian King2016-10-071-2/+2
| | | | | | | | | | | | | | Trival fix, dev_err messages are missing a \n, so add it. Signed-off-by: Colin Ian King <colin.king@canonical.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | Merge branch 'xen-netback-rx-refactor'David S. Miller2016-10-076-793/+644
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Paul Durrant says: ==================== xen-netback: guest rx side refactor This series refactors the guest rx side of xen-netback: - The code is moved into its own source module. - The prefix variant of GSO handling is retired (since it is no longer in common use, and alternatives exist). - The code is then simplified and modifications made to improve performance. v2: - Rebased onto refreshed net-next ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
| * | xen/netback: add fraglist support for to-guest rxRoss Lagerwall2016-10-072-10/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This allows full 64K skbuffs (with 1500 mtu ethernet, composed of 45 fragments) to be handled by netback for to-guest rx. Signed-off-by: Ross Lagerwall <ross.lagerwall@citrix.com> [re-based] Signed-off-by: Paul Durrant <paul.durrant@citrix.com> Reviewed-by: David Vrabel <david.vrabel@citrix.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | xen-netback: batch copies for multiple to-guest rx packetsDavid Vrabel2016-10-072-10/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of flushing the copy ops when an packet is complete, complete packets when their copy ops are done. This improves performance by reducing the number of grant copy hypercalls. Latency is still limited by the relatively small size of the copy batch. Signed-off-by: David Vrabel <david.vrabel@citrix.com> [re-based] Signed-off-by: Paul Durrant <paul.durrant@citrix.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | xen-netback: process guest rx packets in batchesDavid Vrabel2016-10-071-1/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of only placing one skb on the guest rx ring at a time, process a batch of up-to 64. This improves performance by ~10% in some tests. Signed-off-by: David Vrabel <david.vrabel@citrix.com> [re-based] Signed-off-by: Paul Durrant <paul.durrant@citrix.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | xen-netback: immediately wake tx queue when guest rx queue has spaceDavid Vrabel2016-10-071-16/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When an skb is removed from the guest rx queue, immediately wake the tx queue, instead of after processing them. Signed-off-by: David Vrabel <david.vrabel@citrix.com> [re-based] Signed-off-by: Paul Durrant <paul.durrant@citrix.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | xen-netback: refactor guest rxDavid Vrabel2016-10-072-384/+215
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Refactor the to-guest (rx) path to: 1. Push responses for completed skbs earlier, reducing latency. 2. Reduce the per-queue memory overhead by greatly reducing the maximum number of grant copy ops in each hypercall (from 4352 to 64). Each struct xenvif_queue is now only 44 kB instead of 220 kB. 3. Make the code more maintainable. Signed-off-by: David Vrabel <david.vrabel@citrix.com> [re-based] Signed-off-by: Paul Durrant <paul.durrant@citrix.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | xen-netback: retire guest rx side prefix GSO featurePaul Durrant2016-10-074-50/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As far as I am aware only very old Windows network frontends make use of this style of passing GSO packets from backend to frontend. These frontends can easily be replaced by the freely available Xen Project Windows PV network frontend, which uses the 'default' mechanism for passing GSO packets, which is also used by all Linux frontends. NOTE: Removal of this feature will not cause breakage in old Windows frontends. They simply will no longer receive GSO packets - the packets instead being fragmented in the backend. Signed-off-by: Paul Durrant <paul.durrant@citrix.com> Reviewed-by: David Vrabel <david.vrabel@citrix.com> Signed-off-by: David S. Miller <davem@davemloft.net>
| * | xen-netback: separate guest side rx code into separate modulePaul Durrant2016-10-073-755/+790
|/ / | | | | | | | | | | | | | | | | | | | | | | The netback source module has become very large and somewhat confusing. This patch simply moves all code related to the backend to frontend (i.e guest side rx) data-path into a separate rx source module. This patch contains no functional change, it is code movement and minimal changes to avoid patch style-check issues. Signed-off-by: Paul Durrant <paul.durrant@citrix.com> Signed-off-by: David S. Miller <davem@davemloft.net>
* | Merge branch 'fman-next' of git://git.freescale.com/ppc/upstream/linuxDavid S. Miller2016-10-0711-116/+139
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Madalin Bucur says: ==================== fsl/fman: cleanup and small fixes This series contains fixes for the DPAA FMan driver. Adding myself as maintainer of the driver. ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
| * | MAINTAINERS: net: add entry for Freescale QorIQ DPAA FMan driverMadalin Bucur2016-10-041-0/+7
| | | | | | | | | | | | | | | | | | | | | Add record for Freescale QORIQ DPAA FMan driver adding myself as maintainer. Signed-off-by: Madalin Bucur <madalin.bucur@nxp.com>
| * | fsl/fman: remove leftover commentMadalin Bucur2016-10-041-4/+0
| | | | | | | | | | | | Signed-off-by: Madalin Bucur <madalin.bucur@nxp.com>
| * | fsl/fman: fix return value checkingMadalin Bucur2016-10-041-2/+2
| | | | | | | | | | | | Signed-off-by: Madalin Bucur <madalin.bucur@nxp.com>
| * | fsl/fman: simplify redundant conditionMadalin Bucur2016-10-041-2/+1
| | | | | | | | | | | | | | | | | | Change suggested by David Binderman, thanks. Signed-off-by: Madalin Bucur <madalin.bucur@nxp.com>
| * | fsl/fman: check of_get_phy_mode() return valueMadalin Bucur2016-10-041-4/+6
| | | | | | | | | | | | | | | | | | For unknown compatibles avoid crashing and default to SGMII. Signed-off-by: Madalin Bucur <madalin.bucur@nxp.com>
| * | fsl/fman: check pcsphy pointer before useMadalin Bucur2016-10-041-0/+3
| | | | | | | | | | | | Signed-off-by: Madalin Bucur <madalin.bucur@nxp.com>
| * | fsl/fman: MEMAC may use QSGMII PHY interface modeMadalin Bucur2016-10-041-1/+2
| | | | | | | | | | | | Signed-off-by: Madalin Bucur <madalin.bucur@nxp.com>
| * | fsl/fman: return a phy_dev pointer from initMadalin Bucur2016-10-042-12/+13
| | | | | | | | | | | | Signed-off-by: Madalin Bucur <madalin.bucur@nxp.com>
| * | fsl/fman: simplify device tree readsMadalin Bucur2016-10-043-48/+30
| | | | | | | | | | | | Signed-off-by: Madalin Bucur <madalin.bucur@nxp.com>
| * | fsl/fman: use of_get_phy_mode()Madalin Bucur2016-10-041-31/+2
| | | | | | | | | | | | Signed-off-by: Madalin Bucur <madalin.bucur@freescale.com>
| * | fsl/fman: small fixesMadalin Bucur2016-10-042-6/+8
| | | | | | | | | | | | | | | | | | | | | Make module params static, proper NULL checks, remove __iomem label when misused. Signed-off-by: Madalin Bucur <madalin.bucur@freescale.com>
| * | fsl/fman: fix loadable module compilationIgal Liberman2016-10-044-7/+64
| | | | | | | | | | | | Signed-off-by: Igal Liberman <igal.liberman@freescale.com>
| * | fsl/fman: split lines over 80 charactersMadalin Bucur2016-10-042-2/+4
| | | | | | | | | | | | Signed-off-by: Madalin Bucur <madalin.bucur@nxp.com>
* | | Merge tag 'for-f2fs-4.9' of ↵Linus Torvalds2016-10-0723-524/+915
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs Pull f2fs updates from Jaegeuk Kim: "In this round, we've investigated how f2fs deals with errors given by our fault injection facility. With this, we could fix several corner cases. And, in order to improve the performance, we set inline_dentry by default and enhance the exisiting discard issue flow. In addition, we added f2fs_migrate_page for better memory management. Enhancements: - set inline_dentry by default - improve discard issue flow - add more fault injection cases in f2fs - allow block preallocation for encrypted files - introduce migrate_page callback function - avoid truncating the next direct node block at every checkpoint Bug fixes: - set page flag correctly between write_begin and write_end - missing error handling cases detected by fault injection - preallocate blocks regarding to 4KB alignement correctly - dentry and filename handling of encryption - lost xattrs of directories" * tag 'for-f2fs-4.9' of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs: (69 commits) f2fs: introduce update_ckpt_flags to clean up f2fs: don't submit irrelevant page f2fs: fix to commit bio cache after flushing node pages f2fs: introduce get_checkpoint_version for cleanup f2fs: remove dead variable f2fs: remove redundant io plug f2fs: support checkpoint error injection f2fs: fix to recover old fault injection config in ->remount_fs f2fs: do fault injection initialization in default_options f2fs: remove redundant value definition f2fs: support configuring fault injection per superblock f2fs: adjust display format of segment bit f2fs: remove dirty inode pages in error path f2fs: do not unnecessarily null-terminate encrypted symlink data f2fs: handle errors during recover_orphan_inodes f2fs: avoid gc in cp_error case f2fs: should put_page for summary page f2fs: assign return value in f2fs_gc f2fs: add customized migrate_page callback f2fs: introduce cp_lock to protect updating of ckpt_flags ...
| * | | f2fs: introduce update_ckpt_flags to clean upJaegeuk Kim2016-10-011-23/+33
| | | | | | | | | | | | | | | | | | | | | | | | This patch add update_ckpt_flags() to clean up the flow. Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>