Re: [PATCH 06/12] audit: Use timespec64 to represent audit timestamps

2017-04-15 Thread Arnd Bergmann
On Sat, Apr 8, 2017 at 5:58 PM, Deepa Dinamani  wrote:
>> I have no problem merging this patch into audit/next for v4.12, would
>> you prefer me to do that so at least this patch is merged?
>
> This would be fine.
> But, I think whoever takes the last 2 deletion patches should also take them.
> I'm not sure how that part works out.
>
>> It would probably make life a small bit easier for us in the audit
>> world too as it would reduce the potential merge conflict.  However,
>> that's a relatively small thing to worry about.

As Andrew has picked the remaining patches up into -mm, this will work
out fine: any patches picked up by the respective maintainers for v4.12
should arrive as git pull requests before the -mm patches get applied
at a later stage of the merge window.

 Arnd
___
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel


[Patch v2 2/2] lustre: fix coding style issue

2017-04-15 Thread Rishiraj Manwatkar
Comparison should have the CONSTANT on the right side of the test

Signed-off-by: Rishiraj Manwatkar 
---
 drivers/staging/lustre/lustre/obdclass/cl_io.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/staging/lustre/lustre/obdclass/cl_io.c 
b/drivers/staging/lustre/lustre/obdclass/cl_io.c
index 0997254..bec112f 100755
--- a/drivers/staging/lustre/lustre/obdclass/cl_io.c
+++ b/drivers/staging/lustre/lustre/obdclass/cl_io.c
@@ -58,7 +58,7 @@
 
 static inline int cl_io_type_is_valid(enum cl_io_type type)
 {
-   return CIT_READ <= type && type < CIT_OP_NR;
+   return type >= CIT_READ && type < CIT_OP_NR;
 }
 
 static inline int cl_io_is_loopable(const struct cl_io *io)
@@ -389,7 +389,7 @@ void cl_io_unlock(const struct lu_env *env, struct cl_io 
*io)
const struct cl_io_slice *scan;
 
LASSERT(cl_io_is_loopable(io));
-   LASSERT(CIS_IT_STARTED <= io->ci_state && io->ci_state < CIS_UNLOCKED);
+   LASSERT(io->ci_state >= CIS_IT_STARTED && io->ci_state < CIS_UNLOCKED);
LINVRNT(cl_io_invariant(io));
 
set = &io->ci_lockset;
-- 
2.1.4

___
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel


[Patch v2 1/2] lustre: Parantheses added for Macro argument to avoid precedence issues

2017-04-15 Thread Rishiraj Manwatkar
From: RishirajAM 

Parantheses are added for Macro argument, to avoid precedence issues.

Signed-off-by: Rishiraj Manwatkar 
---
 drivers/staging/lustre/lustre/obdclass/cl_io.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/staging/lustre/lustre/obdclass/cl_io.c 
b/drivers/staging/lustre/lustre/obdclass/cl_io.c
index ee7d677..0997254 100755
--- a/drivers/staging/lustre/lustre/obdclass/cl_io.c
+++ b/drivers/staging/lustre/lustre/obdclass/cl_io.c
@@ -52,9 +52,9 @@
  */
 
 #define cl_io_for_each(slice, io) \
-   list_for_each_entry((slice), &io->ci_layers, cis_linkage)
+   list_for_each_entry((slice), &(io)->ci_layers, cis_linkage)
 #define cl_io_for_each_reverse(slice, io)   \
-   list_for_each_entry_reverse((slice), &io->ci_layers, cis_linkage)
+   list_for_each_entry_reverse((slice), &(io)->ci_layers, cis_linkage)
 
 static inline int cl_io_type_is_valid(enum cl_io_type type)
 {
-- 
2.1.4

___
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel


Re: [Patch v2 1/2] lustre: Parantheses added for Macro argument to avoid precedence issues

2017-04-15 Thread g...@kroah.com
On Sat, Apr 15, 2017 at 11:25:00AM +, Rishiraj Manwatkar wrote:
> From: RishirajAM 
> 
> Parantheses are added for Macro argument, to avoid precedence issues.
> 
> Signed-off-by: Rishiraj Manwatkar 
> ---
>  drivers/staging/lustre/lustre/obdclass/cl_io.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)

What changed from v1?  Always put that below the --- line.

And your From: line doesn't match your signed-off-by name, that's not
ok.

> 
> diff --git a/drivers/staging/lustre/lustre/obdclass/cl_io.c 
> b/drivers/staging/lustre/lustre/obdclass/cl_io.c
> index ee7d677..0997254 100755
> --- a/drivers/staging/lustre/lustre/obdclass/cl_io.c
> +++ b/drivers/staging/lustre/lustre/obdclass/cl_io.c
> @@ -52,9 +52,9 @@
>   */
>  
>  #define cl_io_for_each(slice, io) \
> - list_for_each_entry((slice), &io->ci_layers, cis_linkage)
> + list_for_each_entry((slice), &(io)->ci_layers, cis_linkage)

What 'precidence' issue is this fixing?  How could that ever be
incorrect?

Really, this macro just needs to go away and be used "as is" anyway...

thanks,

greg k-h
___
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel


Re: [Patch v2 2/2] lustre: fix coding style issue

2017-04-15 Thread g...@kroah.com
On Sat, Apr 15, 2017 at 11:25:11AM +, Rishiraj Manwatkar wrote:
> Comparison should have the CONSTANT on the right side of the test

Your subject needs to be better :(

thanks,

greg k-h
___
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel


Re: [PATCH 09/22] dm-crypt: Make use of the new sg_map helper in 4 call sites

2017-04-15 Thread Milan Broz
On 04/14/2017 06:03 PM, Logan Gunthorpe wrote:
> 
> 
> On 14/04/17 02:39 AM, Christoph Hellwig wrote:
>> On Thu, Apr 13, 2017 at 04:05:22PM -0600, Logan Gunthorpe wrote:
>>> Very straightforward conversion to the new function in all four spots.
>>
>> I think the right fix here is to switch dm-crypt to the ahash API
>> that takes a scatterlist.
> 
> Hmm, well I'm not sure I understand the code enough to make that
> conversion. But I was looking at it. One tricky bit seems to be that
> crypt_iv_lmk_one adds a seed, skips the first 16 bytes in the page and
> then hashes another 16 bytes from other data. What would you do
> construct a new sgl for it and pass it to the ahash api?
> 
> The other thing is crypt_iv_lmk_post also seems to modify the page after
> the hash with a  crypto_xor so you'd still need at least one kmap in there.

yes, it is in fact modification of CBC mode implemented this hacky way.
These IVs are only for compatibility with loopaes and very old trueCrypt 
formats.

I think your patch is ok (if it is just plain conversion), if it is
really needed, we can switch to ahash later in follow-up patch.

All common code in dmcrypt uses async API already.

p.s.
there is a lot of lists on cc, but for this patch is missing dm-devel, dmcrypt 
changes
need to go through Mike's tree (I added dm-devel to cc:)

Milan


___
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel


[PATCH 0/3] staging: rtl8188eu: fix sparse signedness mismatch warnings

2017-04-15 Thread Aishwarya Pant
Suppress all sparse signedness mismatch warnings generated by-
make C=2 M=drivers/staging/rtl8188eu/ CF="-Wtypesign"

Aishwarya Pant (3):
  staging: rtl8188eu: fix sparse signedness warnings in rtw_get_ie
  staging: rtl8188eu: fix sparse signedness warnings in rtw_set_ie
  staging: rtl8188eu: fix sparse signedness warnings in rtw_generate_ie

 drivers/staging/rtl8188eu/core/rtw_ap.c|  2 +-
 drivers/staging/rtl8188eu/core/rtw_ieee80211.c | 15 ---
 drivers/staging/rtl8188eu/core/rtw_mlme_ext.c  | 14 +++---
 drivers/staging/rtl8188eu/core/rtw_xmit.c  |  3 +--
 drivers/staging/rtl8188eu/include/ieee80211.h  |  6 +++---
 5 files changed, 20 insertions(+), 20 deletions(-)

-- 
2.7.4

___
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel


[PATCH 1/3] staging: rtl8188eu: fix sparse signedness warnings in rtw_get_ie

2017-04-15 Thread Aishwarya Pant
Changed the type of len from (int *) to (unsigned int *) in the
function rtw_get_ie(..) and wherever this function is called to
suppress signedness mismatch warnings of the type-

drivers/staging/rtl8188eu//core/rtw_ap.c:78:60: warning: incorrect type
in argument 3 (different signedness)
drivers/staging/rtl8188eu//core/rtw_ap.c:78:60:expected int *len
drivers/staging/rtl8188eu//core/rtw_ap.c:78:60:got unsigned int
*

Signed-off-by: Aishwarya Pant 
---
 drivers/staging/rtl8188eu/core/rtw_ap.c|  2 +-
 drivers/staging/rtl8188eu/core/rtw_ieee80211.c | 10 +-
 drivers/staging/rtl8188eu/core/rtw_mlme_ext.c  | 14 +++---
 drivers/staging/rtl8188eu/core/rtw_xmit.c  |  3 +--
 drivers/staging/rtl8188eu/include/ieee80211.h  |  4 ++--
 5 files changed, 16 insertions(+), 17 deletions(-)

diff --git a/drivers/staging/rtl8188eu/core/rtw_ap.c 
b/drivers/staging/rtl8188eu/core/rtw_ap.c
index 3fa6af2..91156a2 100644
--- a/drivers/staging/rtl8188eu/core/rtw_ap.c
+++ b/drivers/staging/rtl8188eu/core/rtw_ap.c
@@ -719,7 +719,7 @@ static void start_bss_network(struct adapter *padapter, u8 
*pbuf)
u8 val8, cur_channel, cur_bwmode, cur_ch_offset;
u16 bcn_interval;
u32 acparm;
-   int ie_len;
+   uintie_len;
struct registry_priv *pregpriv = &padapter->registrypriv;
struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
struct security_priv *psecuritypriv = &padapter->securitypriv;
diff --git a/drivers/staging/rtl8188eu/core/rtw_ieee80211.c 
b/drivers/staging/rtl8188eu/core/rtw_ieee80211.c
index d1cd340..f55b38f 100644
--- a/drivers/staging/rtl8188eu/core/rtw_ieee80211.c
+++ b/drivers/staging/rtl8188eu/core/rtw_ieee80211.c
@@ -158,7 +158,7 @@ u8 *rtw_set_ie
 /*
 index: the information element id index, limit is the limit for search
 -*/
-u8 *rtw_get_ie(u8 *pbuf, int index, int *len, int limit)
+u8 *rtw_get_ie(u8 *pbuf, int index, uint *len, int limit)
 {
int tmp, i;
u8 *p;
@@ -293,7 +293,7 @@ int rtw_generate_ie(struct registry_priv *pregistrypriv)
 
 unsigned char *rtw_get_wpa_ie(unsigned char *pie, int *wpa_ie_len, int limit)
 {
-   int len;
+   uint len;
u16 val16;
__le16 le_tmp;
unsigned char wpa_oui_type[] = {0x00, 0x50, 0xf2, 0x01};
@@ -331,7 +331,7 @@ unsigned char *rtw_get_wpa_ie(unsigned char *pie, int 
*wpa_ie_len, int limit)
return NULL;
 }
 
-unsigned char *rtw_get_wpa2_ie(unsigned char *pie, int *rsn_ie_len, int limit)
+unsigned char *rtw_get_wpa2_ie(unsigned char *pie, uint *rsn_ie_len, int limit)
 {
 
return rtw_get_ie(pie, _WPA2_IE_ID_, rsn_ie_len, limit);
@@ -1000,7 +1000,7 @@ int ieee80211_get_hdrlen(u16 fc)
 
 static int rtw_get_cipher_info(struct wlan_network *pnetwork)
 {
-   int wpa_ielen;
+   uint wpa_ielen;
unsigned char *pbuf;
int group_cipher = 0, pairwise_cipher = 0, is8021x = 0;
int ret = _FAIL;
@@ -1045,7 +1045,7 @@ void rtw_get_bcn_info(struct wlan_network *pnetwork)
__le16 le_tmp;
u16 wpa_len = 0, rsn_len = 0;
struct HT_info_element *pht_info = NULL;
-   int len;
+   uint len;
unsigned char   *p;
 
memcpy(&le_tmp, rtw_get_capability_from_ie(pnetwork->network.IEs), 2);
diff --git a/drivers/staging/rtl8188eu/core/rtw_mlme_ext.c 
b/drivers/staging/rtl8188eu/core/rtw_mlme_ext.c
index 30dd4ed..88a3a2b 100644
--- a/drivers/staging/rtl8188eu/core/rtw_mlme_ext.c
+++ b/drivers/staging/rtl8188eu/core/rtw_mlme_ext.c
@@ -286,7 +286,7 @@ static s32 dump_mgntframe_and_wait_ack(struct adapter 
*padapter,
 static int update_hidden_ssid(u8 *ies, u32 ies_len, u8 hidden_ssid_mode)
 {
u8 *ssid_ie;
-   int ssid_len_ori;
+   uint ssid_len_ori;
int len_diff = 0;
 
ssid_ie = rtw_get_ie(ies,  WLAN_EID_SSID, &ssid_len_ori, ies_len);
@@ -1786,7 +1786,7 @@ static void issue_action_BSSCoexistPacket(struct adapter 
*padapter)
plist = phead->next;
 
while (phead != plist) {
-   int len;
+   uint len;
u8 *p;
struct wlan_bssid_ex *pbss_network;
 
@@ -2556,7 +2556,7 @@ static unsigned int OnProbeReq(struct adapter *padapter,
!check_fwstate(pmlmepriv, WIFI_ADHOC_MASTER_STATE|WIFI_AP_STATE))
return _SUCCESS;
 
-   p = rtw_get_ie(pframe + WLAN_HDR_A3_LEN + _PROBEREQ_IE_OFFSET_, 
_SSID_IE_, (int *)&ielen,
+   p = rtw_get_ie(pframe + WLAN_HDR_A3_LEN + _PROBEREQ_IE_OFFSET_, 
_SSID_IE_, &ielen,
len - WLAN_HDR_A3_LEN - _PROBEREQ_IE_OFFSET_);
 
/* check (wildcard) SSID */
@@ -2793,7 +2793,7 @@ static unsigned int OnAuth(struct adapter *padapter,
/* checking for challenging txt... */

[PATCH 2/3] staging: rtl8188eu: fix sparse signedness warnings in rtw_set_ie

2017-04-15 Thread Aishwarya Pant
Changed the type of sz from (int) to (unsigned int) to suppress
signedness mismatch warnings of the type-

drivers/staging/rtl8188eu//core/rtw_ieee80211.c:258:97: warning:
incorrect type in argument 5 (different signedness)
drivers/staging/rtl8188eu//core/rtw_ieee80211.c:258:97:expected
unsigned int [usertype] *frlen
drivers/staging/rtl8188eu//core/rtw_ieee80211.c:258:97:got int
*

Signed-off-by: Aishwarya Pant 
---
 drivers/staging/rtl8188eu/core/rtw_ieee80211.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/staging/rtl8188eu/core/rtw_ieee80211.c 
b/drivers/staging/rtl8188eu/core/rtw_ieee80211.c
index f55b38f..79dda83 100644
--- a/drivers/staging/rtl8188eu/core/rtw_ieee80211.c
+++ b/drivers/staging/rtl8188eu/core/rtw_ieee80211.c
@@ -226,7 +226,8 @@ uintrtw_get_rateset_len(u8  *rateset)
 int rtw_generate_ie(struct registry_priv *pregistrypriv)
 {
u8  wireless_mode;
-   int sz = 0, rateLen;
+   int rateLen;
+   uintsz = 0;
struct wlan_bssid_ex *pdev_network = &pregistrypriv->dev_network;
u8 *ie = pdev_network->IEs;
 
-- 
2.7.4

___
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel


[PATCH 3/3] staging: rtl8188eu: fix sparse signedness warnings in rtw_generate_ie

2017-04-15 Thread Aishwarya Pant
Changed the type of wpa_ie_len from (int *) to (unsigned int *) in the
function rtw_get_wpa_ie(..) to suppress signedness mismatch warnings in
rtw_generate_ie of the type-

drivers/staging/rtl8188eu//core/rtw_ieee80211.c:1009:60: warning: incorrect
type in argument 2 (different signedness)
drivers/staging/rtl8188eu//core/rtw_ieee80211.c:1009:60:expected int
*wpa_ie_len
drivers/staging/rtl8188eu//core/rtw_ieee80211.c:1009:60:got unsigned
int *

Signed-off-by: Aishwarya Pant 
---
 drivers/staging/rtl8188eu/core/rtw_ieee80211.c | 2 +-
 drivers/staging/rtl8188eu/include/ieee80211.h  | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/staging/rtl8188eu/core/rtw_ieee80211.c 
b/drivers/staging/rtl8188eu/core/rtw_ieee80211.c
index 79dda83..d1dafe0 100644
--- a/drivers/staging/rtl8188eu/core/rtw_ieee80211.c
+++ b/drivers/staging/rtl8188eu/core/rtw_ieee80211.c
@@ -292,7 +292,7 @@ int rtw_generate_ie(struct registry_priv *pregistrypriv)
return sz;
 }
 
-unsigned char *rtw_get_wpa_ie(unsigned char *pie, int *wpa_ie_len, int limit)
+unsigned char *rtw_get_wpa_ie(unsigned char *pie, uint *wpa_ie_len, int limit)
 {
uint len;
u16 val16;
diff --git a/drivers/staging/rtl8188eu/include/ieee80211.h 
b/drivers/staging/rtl8188eu/include/ieee80211.h
index b3f331a..22ab0c4 100644
--- a/drivers/staging/rtl8188eu/include/ieee80211.h
+++ b/drivers/staging/rtl8188eu/include/ieee80211.h
@@ -861,7 +861,7 @@ u8 *rtw_get_ie(u8 *pbuf, int index, uint *len, int limit);
 
 void rtw_set_supported_rate(u8 *SupportedRates, uint mode);
 
-unsigned char *rtw_get_wpa_ie(unsigned char *pie, int *wpa_ie_len, int limit);
+unsigned char *rtw_get_wpa_ie(unsigned char *pie, uint *wpa_ie_len, int limit);
 unsigned char *rtw_get_wpa2_ie(unsigned char *pie, uint *rsn_ie_len, int 
limit);
 int rtw_get_wpa_cipher_suite(u8 *s);
 int rtw_get_wpa2_cipher_suite(u8 *s);
-- 
2.7.4

___
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel


[PATCH] scsi: storvsc: Allow only one remove lun work item to be issued per lun

2017-04-15 Thread Cathy Avery
When running multipath on a VM if all available paths go down
the driver can schedule large amounts of storvsc_remove_lun
work items to the same lun. In response to the failing paths
typically storvsc responds by taking host->scan_mutex and issuing
a TUR per lun. If there has been heavy IO to the failed device
all the failed IOs are returned from the host. A remove lun work
item is issued per failed IO. If the outstanding TURs have not been
completed in a timely manner the scan_mutex is never released or
released too late. Consequently the many remove lun work items are
not completed as scsi_remove_device also tries to take host->scan_mutex.
This results in dragging the VM down and sometimes completely.

This patch only allows one remove lun to be issued to a particular
lun while it is an instantiated member of the scsi stack.

Signed-off-by: Cathy Avery 
---
 drivers/scsi/storvsc_drv.c | 33 +++--
 1 file changed, 31 insertions(+), 2 deletions(-)

diff --git a/drivers/scsi/storvsc_drv.c b/drivers/scsi/storvsc_drv.c
index 016639d..9dbb5bf 100644
--- a/drivers/scsi/storvsc_drv.c
+++ b/drivers/scsi/storvsc_drv.c
@@ -478,6 +478,10 @@ struct storvsc_device {
u64 port_name;
 };
 
+struct storvsc_dev_hostdata {
+   atomic_t req_remove_lun;
+};
+
 struct hv_host_device {
struct hv_device *dev;
unsigned int port;
@@ -918,6 +922,8 @@ static void storvsc_handle_error(struct vmscsi_request 
*vm_srb,
u8 asc, u8 ascq)
 {
struct storvsc_scan_work *wrk;
+   struct storvsc_dev_hostdata *hostdata;
+   struct scsi_device *sdev;
void (*process_err_fn)(struct work_struct *work);
bool do_work = false;
 
@@ -953,8 +959,17 @@ static void storvsc_handle_error(struct vmscsi_request 
*vm_srb,
}
break;
case SRB_STATUS_INVALID_LUN:
-   do_work = true;
-   process_err_fn = storvsc_remove_lun;
+   sdev = scsi_device_lookup(host, 0, vm_srb->target_id,
+ vm_srb->lun);
+   if (sdev) {
+   hostdata = sdev->hostdata;
+   if (hostdata &&
+   !atomic_cmpxchg(&hostdata->req_remove_lun, 0, 1)) {
+   do_work = true;
+   process_err_fn = storvsc_remove_lun;
+   }
+   scsi_device_put(sdev);
+   }
break;
case SRB_STATUS_ABORTED:
if (vm_srb->srb_status & SRB_STATUS_AUTOSENSE_VALID &&
@@ -1426,9 +1441,22 @@ static int storvsc_device_configure(struct scsi_device 
*sdevice)
sdevice->no_write_same = 0;
}
 
+   sdevice->hostdata = kzalloc(sizeof(struct storvsc_dev_hostdata),
+   GFP_ATOMIC);
+   if (!sdevice->hostdata)
+   return -ENOMEM;
+
return 0;
 }
 
+static void storvsc_device_destroy(struct scsi_device *sdevice)
+{
+   if (sdevice->hostdata) {
+   kfree(sdevice->hostdata);
+   sdevice->hostdata = NULL;
+   }
+}
+
 static int storvsc_get_chs(struct scsi_device *sdev, struct block_device * 
bdev,
   sector_t capacity, int *info)
 {
@@ -1669,6 +1697,7 @@ static struct scsi_host_template scsi_driver = {
.eh_timed_out = storvsc_eh_timed_out,
.slave_alloc =  storvsc_device_alloc,
.slave_configure =  storvsc_device_configure,
+   .slave_destroy =storvsc_device_destroy,
.cmd_per_lun =  255,
.this_id =  -1,
.use_clustering =   ENABLE_CLUSTERING,
-- 
2.5.0

___
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel


[Patch v3 2/2] lustre: CONSTANTS put on right side of comparison test

2017-04-15 Thread Rishiraj Manwatkar
Comparison should have the CONSTANT on the right side of the test

Signed-off-by: Rishiraj Manwatkar 
---
 v1 -> v2: Added mailing list in cc.
 v2 -> v3: Improved Subject line.
 drivers/staging/lustre/lustre/obdclass/cl_io.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/staging/lustre/lustre/obdclass/cl_io.c 
b/drivers/staging/lustre/lustre/obdclass/cl_io.c
index 0997254..bec112f 100755
--- a/drivers/staging/lustre/lustre/obdclass/cl_io.c
+++ b/drivers/staging/lustre/lustre/obdclass/cl_io.c
@@ -58,7 +58,7 @@
 
 static inline int cl_io_type_is_valid(enum cl_io_type type)
 {
-   return CIT_READ <= type && type < CIT_OP_NR;
+   return type >= CIT_READ && type < CIT_OP_NR;
 }
 
 static inline int cl_io_is_loopable(const struct cl_io *io)
@@ -389,7 +389,7 @@ void cl_io_unlock(const struct lu_env *env, struct cl_io 
*io)
const struct cl_io_slice *scan;
 
LASSERT(cl_io_is_loopable(io));
-   LASSERT(CIS_IT_STARTED <= io->ci_state && io->ci_state < CIS_UNLOCKED);
+   LASSERT(io->ci_state >= CIS_IT_STARTED && io->ci_state < CIS_UNLOCKED);
LINVRNT(cl_io_invariant(io));
 
set = &io->ci_lockset;
-- 
2.1.4

___
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel


[Patch v3 1/2] lustre: Parantheses added for Macro argument to avoid precedence issues

2017-04-15 Thread Rishiraj Manwatkar
Parantheses are added for Macro argument, to avoid precedence issues.

Signed-off-by: Rishiraj Manwatkar 
---
 v1 -> v2: Added mailing list in cc.
 v2 -> v3: Changed From: to be same as Signed-off-by:.
 drivers/staging/lustre/lustre/obdclass/cl_io.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/staging/lustre/lustre/obdclass/cl_io.c 
b/drivers/staging/lustre/lustre/obdclass/cl_io.c
index ee7d677..0997254 100755
--- a/drivers/staging/lustre/lustre/obdclass/cl_io.c
+++ b/drivers/staging/lustre/lustre/obdclass/cl_io.c
@@ -52,9 +52,9 @@
  */
 
 #define cl_io_for_each(slice, io) \
-   list_for_each_entry((slice), &io->ci_layers, cis_linkage)
+   list_for_each_entry((slice), &(io)->ci_layers, cis_linkage)
 #define cl_io_for_each_reverse(slice, io)   \
-   list_for_each_entry_reverse((slice), &io->ci_layers, cis_linkage)
+   list_for_each_entry_reverse((slice), &(io)->ci_layers, cis_linkage)
 
 static inline int cl_io_type_is_valid(enum cl_io_type type)
 {
-- 
2.1.4

___
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel


Re: [PATCH] scsi: storvsc: Allow only one remove lun work item to be issued per lun

2017-04-15 Thread Christoph Hellwig
Just add a singlethreaded workqueue for storvsc_handle_error and you'll
get serialization for all error handling for free.
___
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel


Re: [PATCH 09/22] dm-crypt: Make use of the new sg_map helper in 4 call sites

2017-04-15 Thread Logan Gunthorpe
Thanks for the information Milan.

On 15/04/17 06:10 AM, Milan Broz wrote:
> I think your patch is ok (if it is just plain conversion), if it is
> really needed, we can switch to ahash later in follow-up patch.

Sounds good to me.

> p.s.
> there is a lot of lists on cc, but for this patch is missing dm-devel, 
> dmcrypt changes
> need to go through Mike's tree (I added dm-devel to cc:)

Oh, sorry, I thought I had included all the lists. My hope however would
be to get the first patch merged and then re-send the remaining patches
to their respective maintainers. So that would have happened later. It's
hard to manage patches otherwise with such large distribution lists.

Logan
___
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel


[PATCH v2] staging: lustre: Fix sparse endianness warnings cast to restricted __le64 and __le32

2017-04-15 Thread skanda . kashyap
From: Skanda Guruanand 

The struct lu_dirpage elements in lustre_idl.h file are modified to
__le64 and __le32 types since the  elements are always converted from
litte endian to processor native format in mdc_request.c file.

Following warnings are removed by this fix.

drivers/staging/lustre/lustre/mdc/mdc_request.c:958:42: warning: cast to 
restricted __le64
drivers/staging/lustre/lustre/mdc/mdc_request.c:959:42: warning: cast to 
restricted __le64
drivers/staging/lustre/lustre/mdc/mdc_request.c:962:42: warning: cast to 
restricted __le64
drivers/staging/lustre/lustre/mdc/mdc_request.c:963:42: warning: cast to 
restricted __le64
drivers/staging/lustre/lustre/mdc/mdc_request.c:985:50: warning: cast to 
restricted __le32
drivers/staging/lustre/lustre/mdc/mdc_request.c:1193:24: warning: cast to 
restricted __le64
drivers/staging/lustre/lustre/mdc/mdc_request.c:1328:25: warning: cast to 
restricted __le64
drivers/staging/lustre/lustre/mdc/mdc_request.c:1329:23: warning: cast to 
restricted __le64
drivers/staging/lustre/lustre/mdc/mdc_request.c:1332:25: warning: cast to 
restricted __le64
drivers/staging/lustre/lustre/mdc/mdc_request.c:1333:23: warning: cast to 
restricted __le64

Signed-off-by: Skanda Guruanand 
---
 drivers/staging/lustre/lustre/include/lustre/lustre_idl.h | 8 
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/drivers/staging/lustre/lustre/include/lustre/lustre_idl.h 
b/drivers/staging/lustre/lustre/include/lustre/lustre_idl.h
index 60b827e..df48b8d 100644
--- a/drivers/staging/lustre/lustre/include/lustre/lustre_idl.h
+++ b/drivers/staging/lustre/lustre/include/lustre/lustre_idl.h
@@ -846,10 +846,10 @@ struct luda_type {
 #endif
 
 struct lu_dirpage {
-   __u64   ldp_hash_start;
-   __u64   ldp_hash_end;
-   __u32   ldp_flags;
-   __u32   ldp_pad0;
+   __le64  ldp_hash_start;
+   __le64  ldp_hash_end;
+   __le32  ldp_flags;
+   __le32  ldp_pad0;
struct lu_dirent ldp_entries[0];
 };
 
-- 
1.9.1

___
devel mailing list
de...@linuxdriverproject.org
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel