Re: "hpsa: Change SAS transport devices to bus 0." commit breaks hpacucli on old controller firmware

2016-11-17 Thread Hannes Reinecke
n = nphysicals + nlogicals; > > So the first logical volume gets BTL 0:0:0 and then we attempt to add in > the controller > using the same BTL values at the end of the list. Thus you get the > "device not added" messages. > > The change to bus 0 was because t

Re: [PATCH 3/7] genirq/affinity: Handle pre/post vectors in irq_create_affinity_masks()

2016-11-08 Thread Hannes Reinecke
(-) Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hannes ReineckeTeamlead Storage & Networking h...@suse.de +49 911 74053 688 SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nürnberg GF: F. Imendörffer, J. Smithard, J. Guild, D. Upmanyu, G. Norton HRB 2

Re: [PATCH 2/7] genirq/affinity: Handle pre/post vectors in irq_calc_affinity_vectors()

2016-11-08 Thread Hannes Reinecke
through struct irq_affinity. Signed-off-by: Christoph Hellwig --- drivers/pci/msi.c | 8 include/linux/interrupt.h | 4 ++-- kernel/irq/affinity.c | 24 ++-- 3 files changed, 16 insertions(+), 20 deletions(-) Reviewed-by: Hannes Reinecke Cheers, Hannes

Re: [RFC PATCH] pci: add pci_irq_get_affinity_vector()

2016-11-08 Thread Hannes Reinecke
On 11/08/2016 04:11 PM, Christoph Hellwig wrote: On Tue, Nov 08, 2016 at 04:08:51PM +0100, Hannes Reinecke wrote: The use-case here is that one needs to feed the MSI-X index into the driver command structure. While we can extract that number trivially with scsi-mq, but for scsi-sq we don't

Re: [RFC PATCH] pci: add pci_irq_get_affinity_vector()

2016-11-08 Thread Hannes Reinecke
On 11/08/2016 03:56 PM, Christoph Hellwig wrote: On Tue, Nov 08, 2016 at 08:47:21AM +0100, Hannes Reinecke wrote: Add a reverse-mapping function to return the interrupt vector for any CPU if interrupt affinity is enabled. What's the use case of it? Also as-is this won't work due

Re: [PATCH 3/7] genirq/affinity: Handle pre/post vectors in irq_create_affinity_masks()

2016-11-08 Thread Hannes Reinecke
On 11/08/2016 03:55 PM, Christoph Hellwig wrote: [please trim the f***king context in your replies, thanks..] On Tue, Nov 08, 2016 at 09:15:27AM +0100, Hannes Reinecke wrote: +irq_create_affinity_masks(int nvecs, const struct irq_affinity *affd) { - int n, nodes, vecs_per_node

Re: [PATCH 6/7] pci: Remove the irq_affinity mask from struct pci_dev

2016-11-08 Thread Hannes Reinecke
[DEVICE_COUNT_RESOURCE]; /* I/O and memory regions + expansion ROMs */ bool match_driver; /* Skip attaching driver */ Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hannes ReineckeTeamlead Storage & Networking h...@suse.de +49 911 7

Re: [PATCH 5/7] pci/msi: Provide pci_alloc_irq_vectors_affinity()

2016-11-08 Thread Hannes Reinecke
, 32 insertions(+), 12 deletions(-) Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hannes ReineckeTeamlead Storage & Networking h...@suse.de +49 911 74053 688 SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nürnberg GF: F. Imendörffer, J. Smithar

Re: [PATCH 4/7] pci/msi: Propagate irq affinity description through the MSI code

2016-11-08 Thread Hannes Reinecke
file changed, 33 insertions(+), 29 deletions(-) Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hannes ReineckeTeamlead Storage & Networking h...@suse.de +49 911 74053 688 SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nürnberg GF: F. Imendörffe

Re: [PATCH 3/7] genirq/affinity: Handle pre/post vectors in irq_create_affinity_masks()

2016-11-08 Thread Hannes Reinecke
ASK_NONE; struct cpumask *masks; cpumask_var_t nmsk; Check for NULL affd? Cheers, Hannes -- Dr. Hannes ReineckeTeamlead Storage & Networking h...@suse.de +49 911 74053 688 SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nürnberg GF: F. I

Re: [PATCH 2/7] genirq/affinity: Handle pre/post vectors in irq_calc_affinity_vectors()

2016-11-08 Thread Hannes Reinecke
- int cpus, ret; + int resv = affd->pre_vectors + affd->post_vectors; + int vecs = maxvec - resv; + int cpus; Shouldn't you check for NULL affd here? Cheers, Hannes -- Dr. Hannes ReineckeTeamlead Storage & Networking h...@suse.de

Re: [PATCH 1/7] genirq/affinity: Introduce struct irq_affinity

2016-11-08 Thread Hannes Reinecke
) extern cpumask_var_t irq_default_affinity; Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hannes ReineckeTeamlead Storage & Networking h...@suse.de +49 911 74053 688 SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nürnberg GF: F. Imendörffe

[RFC PATCH] pci: add pci_irq_get_affinity_vector()

2016-11-07 Thread Hannes Reinecke
Add a reverse-mapping function to return the interrupt vector for any CPU if interrupt affinity is enabled. Signed-off-by: Hannes Reinecke --- drivers/pci/msi.c | 36 include/linux/pci.h | 1 + 2 files changed, 37 insertions(+) diff --git a/drivers/pci

Re: [PATCH 2/2] blk-mq: add a first_vec argument to blk_mq_pci_map_queues

2016-11-07 Thread Hannes Reinecke
> include/linux/blk-mq-pci.h | 3 ++- > 3 files changed, 7 insertions(+), 4 deletions(-) > With this patch smartpqi doesn't compile anymore; it still uses the old interface. So to get this merged you probably should send a patch for that one, too. Cheers, Hannes -- Dr. Hannes Reine

Re: [PATCH 2/2] blk-mq: add a first_vec argument to blk_mq_pci_map_queues

2016-11-07 Thread Hannes Reinecke
> include/linux/blk-mq-pci.h | 3 ++- > 3 files changed, 7 insertions(+), 4 deletions(-) > Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hannes ReineckeTeamlead Storage & Networking h...@suse.de +49 911 74053 688 SUSE LINUX G

Re: [PATCH 1/2] irq,pci: allow drivers to specify complex affinity requirement

2016-11-07 Thread Hannes Reinecke
--- > 4 files changed, 98 insertions(+), 68 deletions(-) > Good idea. Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hannes ReineckeTeamlead Storage & Networking h...@suse.de +49 911 74053 688 SU

[PATCH 2/2] loop: support 4k physical blocksize

2016-11-03 Thread Hannes Reinecke
e physical blocksize. Signed-off-by: Hannes Reinecke --- drivers/block/loop.c | 36 +++- drivers/block/loop.h | 1 + include/uapi/linux/loop.h | 1 + 3 files changed, 33 insertions(+), 5 deletions(-) diff --git a/drivers/block/loop.c b/drivers/block/lo

[PATCHv4 0/2] loop: enable different logical blocksizes

2016-11-03 Thread Hannes Reinecke
re welcome. Changes to v1: - Move LO_FLAGS_BLOCKSIZE definition - Reshuffle patches Changes to v2: - Include reviews from Ming Lei Changes to v3: - Include reviews from Christoph - Merge patches Hannes Reinecke (2): loop: Remove unused 'bdev' argument from loop_set_capacity loop: support 4

[PATCHv3 1/2] loop: Remove unused 'bdev' argument from loop_set_capacity

2016-11-03 Thread Hannes Reinecke
Signed-off-by: Hannes Reinecke Reviewed-by: Christoph Hellwig Reviewed-by: Ming Lei --- drivers/block/loop.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/block/loop.c b/drivers/block/loop.c index fa1b7a9..3008dec 100644 --- a/drivers/block/loop.c +++ b

Re: [PATCH 4/4] loop: Pass logical blocksize in 'lo_init[0]' ioctl field

2016-11-03 Thread Hannes Reinecke
On 11/01/2016 03:02 PM, Christoph Hellwig wrote: On Mon, Oct 31, 2016 at 08:37:19PM +0100, Hannes Reinecke wrote: The current LOOP_SET_STATUS64 ioctl has two unused fields 'init[2]', which can be used in conjunction with the LO_FLAGS_BLOCKSIZE flag to pass in the new logical blocksize

Re: [PATCH 4/4] loop: Pass logical blocksize in 'lo_init[0]' ioctl field

2016-11-01 Thread Hannes Reinecke
On 11/01/2016 03:02 PM, Christoph Hellwig wrote: On Mon, Oct 31, 2016 at 08:37:19PM +0100, Hannes Reinecke wrote: The current LOOP_SET_STATUS64 ioctl has two unused fields 'init[2]', which can be used in conjunction with the LO_FLAGS_BLOCKSIZE flag to pass in the new logical blocksize

Re: [PATCH 3/4] loop: Add 'lo_logical_blocksize'

2016-11-01 Thread Hannes Reinecke
On 11/01/2016 03:01 PM, Christoph Hellwig wrote: On Mon, Oct 31, 2016 at 08:37:18PM +0100, Hannes Reinecke wrote: Add a new field 'lo_logical_blocksize' to hold the logical blocksize of the loop device. Why do we use the same flag for both block sizes? If there is a good reason f

[PATCH 4/4] loop: Pass logical blocksize in 'lo_init[0]' ioctl field

2016-10-31 Thread Hannes Reinecke
The current LOOP_SET_STATUS64 ioctl has two unused fields 'init[2]', which can be used in conjunction with the LO_FLAGS_BLOCKSIZE flag to pass in the new logical blocksize. Signed-off-by: Hannes Reinecke --- drivers/block/loop.c | 24 +++- 1 file changed, 19 insert

[PATCHv3 0/4] loop: enable different physical blocksizes

2016-10-31 Thread Hannes Reinecke
Reshuffle patches Changes to v2: - Include reviews from Ming Lei Hannes Reinecke (4): loop: Remove unused 'bdev' argument from loop_set_capacity loop: Enable correct physical blocksize loop: Add 'lo_logical_blocksize' loop: Pass logical blocksize in 'lo_init[0]&

[PATCH 1/4] loop: Remove unused 'bdev' argument from loop_set_capacity

2016-10-31 Thread Hannes Reinecke
Signed-off-by: Hannes Reinecke Reviewed-by: Christoph Hellwig --- drivers/block/loop.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/block/loop.c b/drivers/block/loop.c index fa1b7a9..3008dec 100644 --- a/drivers/block/loop.c +++ b/drivers/block/loop.c

[PATCH 2/4] loop: Enable correct physical blocksize

2016-10-31 Thread Hannes Reinecke
When running on files the physical blocksize is actually 4k, so we should be announcing it as such. This is enabled with a new LO_FLAGS_BLOCKSIZE flag value to the existing loop_set_status ioctl. Signed-off-by: Hannes Reinecke --- drivers/block/loop.c | 9 - include/uapi/linux

[PATCH 3/4] loop: Add 'lo_logical_blocksize'

2016-10-31 Thread Hannes Reinecke
Add a new field 'lo_logical_blocksize' to hold the logical blocksize of the loop device. Signed-off-by: Hannes Reinecke --- drivers/block/loop.c | 9 +++-- drivers/block/loop.h | 1 + 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/drivers/block/loop.c b/drivers/bl

Re: [PATCH v2 02/16] scsi: don't use fc_bsg_job::request and fc_bsg_job::reply directly

2016-10-28 Thread Hannes Reinecke
bsg_reply = job->reply; >>>> +bsg_reply->reply_payload_rcv_len = 0; >>>> +bsg_reply->result = -ENOMSG; > > Compiler optimization re-ordered above two lines and the first pointer > derefence is bsg_reply->result [field offset 0] where bsg_reply is NULL. > The assignment tries to write to memory at address NULL causing the > kernel page fault. > I spoke to our compiler people, and they strongly believed this not to be the case. Or, put it the other way round, if such a thing would happen it would be a compiler issue. Have you checked the compiler output? Cheers, Hannes -- Dr. Hannes ReineckeTeamlead Storage & Networking h...@suse.de +49 911 74053 688 SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nürnberg GF: F. Imendörffer, J. Smithard, J. Guild, D. Upmanyu, G. Norton HRB 21284 (AG Nürnberg)

Re: [PATCH] pci: Don't set RCB bit in LNKCTL if the upstream bridge hasn't

2016-10-27 Thread Hannes Reinecke
On 10/27/2016 01:51 PM, Bjorn Helgaas wrote: > On Thu, Oct 27, 2016 at 07:42:27AM +0200, Hannes Reinecke wrote: >> On 10/26/2016 09:43 PM, Bjorn Helgaas wrote: >>> Hi Johannes, >>> >>> On Wed, Oct 26, 2016 at 03:53:34PM +0200, Johannes Thumshirn wrote: >&g

Re: [PATCH v2 05/11] mpt3sas: Bump driver version as "14.100.00.00"

2016-10-27 Thread Hannes Reinecke
R_VERSION "14.100.00.00" > +#define MPT3SAS_MAJOR_VERSION14 > #define MPT3SAS_MINOR_VERSION 100 > #define MPT3SAS_BUILD_VERSION 0 > #define MPT3SAS_RELEASE_VERSION 00 > Rev

Re: [PATCH v2 11/11] mpt3sas: Bump driver version as "14.101.00.00"

2016-10-27 Thread Hannes Reinecke
#define MPT3SAS_MAJOR_VERSION14 > -#define MPT3SAS_MINOR_VERSION100 > +#define MPT3SAS_MINOR_VERSION101 > #define MPT3SAS_BUILD_VERSION 0 > #define MPT3SAS_RELEASE_VERSION 00 > >

Re: [PATCH v2 03/11] mpt3sas: Implement device_remove_in_progress check in IOCTL path

2016-10-27 Thread Hannes Reinecke
rs/scsi/mpt3sas/mpt3sas_ctl.c | 46 > ++-- > drivers/scsi/mpt3sas/mpt3sas_scsih.c | 24 ++- > 4 files changed, 86 insertions(+), 8 deletions(-) > Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hannes Reinecke

Re: [PATCH] pci: Don't set RCB bit in LNKCTL if the upstream bridge hasn't

2016-10-26 Thread Hannes Reinecke
the _HPX method was causing the RCB for all PCI devices to be set to 128 bytes, while the root bridge remained at 64 bytes. While this is arguably a BIOS bug, earlier linux version (ie without the mentioned patch) were running fine, so this is actually a regression. Cheers, Hannes -- Dr. Hann

Re: [PATCH] pci: Don't set RCB bit in LNKCTL if the upstream bridge hasn't

2016-10-26 Thread Hannes Reinecke
d-off-by: Johannes Thumshirn > --- > drivers/pci/probe.c | 26 -- > 1 file changed, 24 insertions(+), 2 deletions(-) > This fixes a regression where the mlx4 driver would not load (and, in fact, crash) on certain Ivybridge servers. Reviewed-by: Hannes Reinecke

Re: [PATCH 03/10] mpt3sas: Implement device_remove_in_progress check in IOCTL path

2016-10-25 Thread Hannes Reinecke
s you're adding devices you (might) increase the number of devices, potentially overflowing the bitmap. Hence the question: is it possible that you can add _more_ devices than the bitmap can hold? Or, to put it the other way round: Why don't you need to check the size of the bitmap t

Re: [PATCH] advansys: fix build warning for PCI=n

2016-10-24 Thread Hannes Reinecke
shost) ? -ENODEV : 0; > +#else > + share_irq = 0; > + ret = -ENODEV; > #endif /* CONFIG_PCI */ > } > > Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hannes ReineckezSeries & Storage h...@suse.com

Re: [PATCH 10/10] mpt3sas: Fix for Endianness issue.

2016-10-24 Thread Hannes Reinecke
to_cpu(sas_device_pg0.Slot); + sas_device_pg0.Flags = le16_to_cpu(sas_device_pg0.Flags); _scsih_mark_responding_sas_device(ioc, &sas_device_pg0); } Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hannes ReineckeTeamlead Storage & Networking h...@suse

Re: [PATCH 07/10] mpt3sas: Increased/Additional MSIX support for SAS35 devices.

2016-10-24 Thread Hannes Reinecke
ioc->combined_reply_index_count = + MPT3_SUP_REPLY_POST_HOST_INDEX_REG_COUNT_G3; + } break; default: return -ENODEV; Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hannes Re

Re: [PATCH 08/10] mpt3sas: set EEDP-escape-flags for SAS35 devices.

2016-10-24 Thread Hannes Reinecke
*scmd, mpi_request_3v->EEDPBlockSize = cpu_to_le16(scmd->device->sector_size); + + if (ioc->is_gen35_ioc) + eedp_flags |= MPI25_SCSIIO_EEDPFLAGS_APPTAG_DISABLE_MODE; mpi_request->EEDPFlags = cpu_to_le16(eedp_flags); } Reviewed-by: Hann

Re: [PATCH 09/10] mpt3sas: Use the new MPI 2.6 32-bit Atomic Request Descriptors for SAS35 devices.

2016-10-24 Thread Hannes Reinecke
deletions(-) Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hannes ReineckeTeamlead Storage & Networking h...@suse.de +49 911 74053 688 SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nürnberg GF: F. Imendörffer, J. Smithard, J. Guild, D. Upmany

Re: [PATCH 06/10] mpt3sas: Added Device ID's for SAS35 devices and updated MPI header.

2016-10-24 Thread Hannes Reinecke
+ PCI_ANY_ID, PCI_ANY_ID }, {0} /* Terminating entry */ }; MODULE_DEVICE_TABLE(pci, mpt3sas_pci_table); Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hannes ReineckeTeamlead Storage & Networking h...@suse.de +49

Re: [PATCH 04/10] mpt3sas: Removing unused macro "MPT_DEVICE_TLR_ON"

2016-10-24 Thread Hannes Reinecke
/ #define MPT_DEVICE_FLAGS_INIT 0x01 -#define MPT_DEVICE_TLR_ON 0x02 #define MFG_PAGE10_HIDE_SSDS_MASK (0x0003) #define MFG_PAGE10_HIDE_ALL_DISKS (0x00) Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hannes ReineckeTeamlead Storage & Networkin

Re: [PATCH 05/10] mpt3sas: Bump driver version as "14.100.00.00"

2016-10-24 Thread Hannes Reinecke
define MPT3SAS_MINOR_VERSION 100 #define MPT3SAS_BUILD_VERSION 0 #define MPT3SAS_RELEASE_VERSION00 Please move this to the end of the patch series. Cheers, Hannes -- Dr. Hannes ReineckeTeamlead Storage & Networking h...@suse.de +

Re: [PATCH 03/10] mpt3sas: Implement device_remove_in_progress check in IOCTL path

2016-10-24 Thread Hannes Reinecke
case MPI2_EVENT_SAS_TOPO_RC_TARG_ADDED: @@ -7707,6 +7726,9 @@ mpt3sas_scsih_reset_handler(struct MPT3SAS_ADAPTER *ioc, int reset_phase) complete(&ioc->tm_cmds.done); } + memset(ioc->pend_os_device_add, 0, ioc->pend_os

Re: [PATCH 02/10] mpt3sas: Fix for incorrect numbers for MSIX vectors enabled when non RDPQ card is enumerated first.

2016-10-24 Thread Hannes Reinecke
goto try_ioapic; if (ioc->msix_vector_count < ioc->cpu_count) Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hannes ReineckeTeamlead Storage & Networking h...@suse.de +49 911 74053 688 SUSE LINUX GmbH, Maxfeldstr. 5, 9

Re: [PATCH 01/10] mpt3sas: Fix for improper info displayed in var log, while blocking or unblocking the device.

2016-10-24 Thread Hannes Reinecke
retried device_unblock" " failed with return(%d) for handle(0x%04x)\n", - sas_device_priv_data->sas_target->handle, r); + r, sas_device_priv_data->sas_target->handle); } } Reviewed-by: Hannes Reinecke Cheers, Hanne

Re: [PATCH] sd: fix uninitialized variable access in error handling

2016-10-24 Thread Hannes Reinecke
*sdkp) /* Do a report zone to get the same field */ ret = sd_zbc_report_zones(sdkp, buf, SD_ZBC_BUF_SIZE, 0); - if (ret) + if (ret) { + zone_blocks = 0; goto out; + } same = buf[4] & 0x0f; if (same > 0) {

Re: [PATCH] partitions/efi: Ignore errors when alternate GPT is not at the end of disk

2016-10-18 Thread Hannes Reinecke
On 10/18/2016 11:56 AM, Karel Zak wrote: > On Mon, Oct 17, 2016 at 12:20:30PM +0200, Hannes Reinecke wrote: >> The GPT specification requires that the alternate GPT is at the >> end of the disk. However, if a Software RAID1 is enabled the RAID >> metadata typically placed a

Re: MD-RAID: Use seq_putc() in three status functions?

2016-10-17 Thread Hannes Reinecke
is does it trying to out-guess what the compiler might be doing during compilation. For which the easiest method is checking. So back to the original task for you: Show me in the generated output where the benefits are. Cheers, Hannes -- Dr. Hannes Reinecke zSeries & Storag

Re: MD-RAID: Use seq_putc() in three status functions?

2016-10-17 Thread Hannes Reinecke
ccasionally: yes. In this particular case: hardly. Cheers, Hannes -- Dr. Hannes Reinecke zSeries & Storage h...@suse.de +49 911 74053 688 SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg GF: J. Hawn, J. Guild, F. Imendörffer, HRB 16746 (AG Nürnberg)

Re: MD-RAID: Use seq_putc() in three status functions?

2016-10-17 Thread Hannes Reinecke
.5 > > Thanks for this detail. > > * Did you choose any special optimisation settings for your quick check? > > * Will any compilation results matter if "optimisation" would be > switched off there? > > These were the results when calling 'make' in

Re: MD-RAID: Use seq_putc() in three status functions?

2016-10-17 Thread Hannes Reinecke
reconsider > implementation details from three status functions? > No. But we're waiting for you showing is that it is an improvement. Which at the moment we don't see. Hence we're waiting from a proof or validation from your side. Cheers, Hannes -- Dr. Hannes Reinecke

[PATCH] partitions/efi: Ignore errors when alternate GPT is not at the end of disk

2016-10-17 Thread Hannes Reinecke
ave a partition table which is _smaller_ than the device; eg we don't check for the device size in the msdos partition, neither. So don't print out a warning here. Signed-off-by: Hannes Reinecke --- block/partitions/efi.c | 15 --- 1 file changed, 15 deletions(-) diff --git a/b

Re: MD-RAID: Use seq_putc() in three status functions?

2016-10-17 Thread Hannes Reinecke
code for driver/md/raid1.c, but with one instruction _more_ >> after your patch has been applied. > > Which software versions and command parameters did you try out > for this information (from an unspecified run time environment)? > > # gcc --version gcc (SUSE Linux) 4.8.5 Co

Re: MD-RAID: Use seq_putc() in three status functions?

2016-10-17 Thread Hannes Reinecke
character? > Because it's being called at the end of a function calling seq_printf() already. So exchanging a single call is probably not helping anything, as the compiler will optimize it anyway. Case in point: with your patch the x86_64 compiler generates nearly identical code for driver

Re: MD-RAID: Use seq_putc() in three status functions?

2016-10-16 Thread Hannes Reinecke
he answer is 'yes' to the above two questions) the patch will be applied. Cheers, Hannes -- Dr. Hannes ReineckeTeamlead Storage & Networking h...@suse.de +49 911 74053 688 SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nürnberg GF: F. Imendörffer, J. Smithard, J. Guild, D. Upmanyu, G. Norton HRB 21284 (AG Nürnberg)

Re: [PATCH] MD-RAID: Use seq_putc() in three status functions

2016-10-16 Thread Hannes Reinecke
v) seq_printf (seq, "%s", rdev && test_bit(In_sync, &rdev->flags) ? "U" : "_"); } rcu_read_unlock(); - seq_printf (seq, "]"); + seq_putc(seq, ']'); } static void print_raid5_conf (stru

Re: [PATCH v4 1/4] block: Add iocontext priority to request

2016-10-15 Thread Hannes Reinecke
On 10/14/2016 08:35 PM, Adam Manzananares wrote: The 10/14/2016 07:54, Hannes Reinecke wrote: On 10/13/2016 09:53 PM, Adam Manzanares wrote: Patch adds an association between iocontext ioprio and the ioprio of a request. This value is set in blk_rq_set_prio which takes the request and the ioc

Re: [PATCH v4 2/4] fusion: remove iopriority handling

2016-10-13 Thread Hannes Reinecke
->ioprio & 0x7)) > - scsictl |= MPI_SCSIIO_CONTROL_HEADOFQ; > - } > } else > scsictl = scsidir | MPI_SCSIIO_CONTROL_UNTAGGED; > > Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hannes Reinecke

Re: [PATCH v4 1/4] block: Add iocontext priority to request

2016-10-13 Thread Hannes Reinecke
> +static inline void blk_rq_set_prio(struct request *rq, struct io_context > *ioc) > +{ > + if (ioc) > + rq->ioprio = ioc->ioprio; > +} > + > +/* > * Request issue related functions. > */ > extern struct request *blk_peek_request(struct re

Re: [PATCH v2 04/16] scsi: Unify interfaces of fc_bsg_jobdone and bsg_job_done

2016-10-13 Thread Hannes Reinecke
++- > drivers/scsi/qla2xxx/qla_bsg.c | 66 +- > drivers/scsi/scsi_transport_fc.c | 22 +++-- > include/scsi/scsi_transport_fc.h | 3 +- > 8 files changed, 116 insertions(+), 60 deletions(-) > Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Ha

Re: [PATCH v2 05/16] scsi: fc: provide fc_bsg_to_shost() helper

2016-10-13 Thread Hannes Reinecke
t; drivers/scsi/qla2xxx/qla_bsg.c | 54 > > drivers/scsi/scsi_transport_fc.c | 2 +- > include/scsi/scsi_transport_fc.h | 5 > 8 files changed, 56 insertions(+), 53 deletions(-) > Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hannes Reinecke

Re: [PATCH v2 15/16] scsi: fc: move FC transport's bsg code to bsg-lib

2016-10-13 Thread Hannes Reinecke
+ > drivers/scsi/scsi_transport_fc.c | 287 > ++- > 2 files changed, 44 insertions(+), 244 deletions(-) > Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hannes ReineckeTeamlead Storage & Networking h...@suse.de +49 911 74

Re: [PATCH v2 16/16] block: unexport bsg_softirq_done() again

2016-10-13 Thread Hannes Reinecke
*job_fn, int dd_job_size); > void bsg_request_fn(struct request_queue *q); > -void bsg_softirq_done(struct request *rq); > void bsg_job_put(struct bsg_job *job); > int __must_check bsg_job_get(struct bsg_job *job); > > Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hann

Re: [PATCH v2 12/16] scsi: fc: use bsg_softirq_done

2016-10-13 Thread Hannes Reinecke
i_transport_fc.c | 16 ++-- > include/linux/bsg-lib.h | 1 + > 3 files changed, 5 insertions(+), 15 deletions(-) > Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hannes ReineckeTeamlead Storage & Networking h...@suse.de

Re: [PATCH v2 14/16] block: add bsg_job_put() and bsg_job_get()

2016-10-13 Thread Hannes Reinecke
i/scsi_transport_fc.c | 4 ++-- > include/linux/bsg-lib.h | 3 ++- > 3 files changed, 18 insertions(+), 6 deletions(-) > Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hannes ReineckeTeamlead Storage & Networking h...@suse.de

Re: [PATCH v2 13/16] scsi: fc: use bsg_job_done

2016-10-13 Thread Hannes Reinecke
> drivers/scsi/scsi_transport_fc.c | 41 +++-- > include/scsi/scsi_transport_fc.h | 2 -- > 8 files changed, 50 insertions(+), 87 deletions(-) > Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hannes Reinecke

Re: [PATCH v2 11/16] scsi: fc: Use bsg_destroy_job

2016-10-13 Thread Hannes Reinecke
-- > include/linux/bsg-lib.h | 1 + > 3 files changed, 5 insertions(+), 19 deletions(-) > Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hannes ReineckeTeamlead Storage & Networking h...@suse.de +49 911 74053

Re: [PATCH v2 10/16] scsi: change FC drivers to use 'struct bsg_job'

2016-10-13 Thread Hannes Reinecke
_fc.h | 63 ++---- > 17 files changed, 138 insertions(+), 163 deletions(-) > Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hannes ReineckeTeamlead Storage & Networking h...@suse.de +49 911 74053 688 SUSE LINUX G

Re: [PATCH v2 08/16] scsi: fc: implement kref backed reference counting

2016-10-13 Thread Hannes Reinecke
s actually running, and we might clash with eg. timeouts or somesuch. Maybe it's an idea to move blk_end_request_all into the kref destroy callback; that way we're guaranteed to call it only once and would avoid this situation. Cheers, Hannes -- Dr. Hannes ReineckeTeamlead Storage & Networking h...@suse.de +49 911 74053 688 SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nürnberg GF: F. Imendörffer, J. Smithard, J. Guild, D. Upmanyu, G. Norton HRB 21284 (AG Nürnberg)

Re: [PATCH v2 09/16] block: add reference counting for struct bsg_job

2016-10-13 Thread Hannes Reinecke
+-- > include/linux/bsg-lib.h | 2 ++ > 2 files changed, 7 insertions(+), 2 deletions(-) > Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hannes ReineckeTeamlead Storage & Networking h...@suse.de +49 911 74053 688 SUSE LIN

Re: [PATCH v2 07/16] scsi: libfc: don't set FC_RQST_STATE_DONE before calling fc_bsg_jobdone()

2016-10-13 Thread Hannes Reinecke
|= FC_RQST_STATE_DONE; > fc_bsg_jobdone(job, bsg_reply->result, > bsg_reply->reply_payload_rcv_len); > kfree(info); > Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hannes ReineckeTeamlead Storage & Net

Re: [PATCH v2 06/16] scsi: fc: provide fc_bsg_to_rport() helper

2016-10-13 Thread Hannes Reinecke
csi/scsi_transport_fc.h | 5 + > 7 files changed, 17 insertions(+), 10 deletions(-) > Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hannes ReineckeTeamlead Storage & Networking h...@suse.de +49 911 74053 688 SUSE LINUX Gmb

Re: [PATCH v2 03/16] scsi: fc: Export fc_bsg_jobdone and use it in FC drivers

2016-10-13 Thread Hannes Reinecke
d, 50 insertions(+), 51 deletions(-) > Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hannes ReineckeTeamlead Storage & Networking h...@suse.de +49 911 74053 688 SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nürnberg GF: F. Imendörffer, J. Smithard, J. Guild, D. Upmanyu, G. Norton HRB 21284 (AG Nürnberg)

Re: [PATCH v2 02/16] scsi: don't use fc_bsg_job::request and fc_bsg_job::reply directly

2016-10-13 Thread Hannes Reinecke
; drivers/scsi/qla2xxx/qla_bsg.c | 264 > ++- > drivers/scsi/qla2xxx/qla_iocb.c | 5 +- > drivers/scsi/qla2xxx/qla_isr.c | 46 --- > drivers/scsi/qla2xxx/qla_mr.c| 10 +- > drivers/scsi/scsi_transport_fc.c | 37 +++--- > 10 files changed, 387 inse

Re: [PATCH v2 01/16] scsi: Get rid of struct fc_bsg_buffer

2016-10-13 Thread Hannes Reinecke
.c | 2 +- > include/scsi/scsi_transport_fc.h | 12 +++- > 3 files changed, 6 insertions(+), 11 deletions(-) > Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hannes ReineckeTeamlead Storage & Networking h...@suse.de

Re: [PATCH 00/44] Convert FibreChannel bsg code to use bsg-lib

2016-10-11 Thread Hannes Reinecke
port libfc: use fc_bsg_to_rport() to access a bsg_job's rport ibmvfc: use fc_bsg_to_rport() to access a bsg_job's rport And these. That should cut down the number of patches by quite a bit. Cheers, Hannes -- Dr. Hannes ReineckezSeries & Storage h.

Re: [PATCH 30/54] md/raid5: Delete two error messages for a failed memory allocation

2016-10-06 Thread Hannes Reinecke
} return conf; free_conf: Actually I prefer having error messages, especially if you have several possible failures all leading to the same return value. Without it debugging becomes really hard. Cheers, Hannes -- Dr. Hannes ReineckeTeamlead Storage & Networkin

Re: [dm-devel] [PATCH 0/9] Generate uevents for all DM events

2016-10-04 Thread Hannes Reinecke
the dm-event usage from multipathing. As it stands using dm-events from multipathing is a massive resource drain (we have to allocate a waiting thread for each device), and we more-or-less disregard that information anyway as it is an ex-post notification made _after_ someone modified the

Re: [PATCH 00/12] Fixes, cleanup and g_NCR5380_mmio/g_NCR5380 merger

2016-10-04 Thread Hannes Reinecke
14 files changed, 495 insertions(+), 487 deletions(-) > delete mode 100644 drivers/scsi/g_NCR5380_mmio.c > For this series: Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hannes Reinecke zSeries & Storage h...@suse.de +49 911 74053 688 SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg GF: J. Hawn, J. Guild, F. Imendörffer, HRB 16746 (AG Nürnberg)

Re: [Question] Calling request_firmware under the spinlocks in file advansys.c

2016-09-27 Thread Hannes Reinecke
interrupt routine to do all sorts of things, and are thereby well versed to keep interrupts disabled for an extented amount of time. However, we don't really have a good way of handling a request firmware here; we probably would need to implement a workqueue to handle this properly ... Cheers, Ha

Re: TRIM/UNMAP/DISCARD via ATA Passthrough

2016-09-16 Thread Hannes Reinecke
TL (mpt3sas being the most prominent other one). And while they might support ATA_12/ATA_16, there is no indication that you can pass DSM TRIM that way. Cheers, Hannes -- Dr. Hannes Reinecke zSeries & Storage h...@suse.de +49 911 74053 688 SUSE LINUX

Re: [PATCH] scsi: megaraid_sas: add in missing white space in error message text

2016-09-14 Thread Hannes Reinecke
dev_printk(KERN_DEBUG, &pdev->dev, "Failed to allocate" > + dev_printk(KERN_DEBUG, &pdev->dev, "Failed to allocate " > "memory for producer, consumer\n"); > goto fail_alloc_dma_buf; >

Re: [PATCH 15/15] hisi_sas: send three identify before phy up

2016-09-14 Thread Hannes Reinecke
> 1 file changed, 16 insertions(+), 4 deletions(-) > Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hannes Reinecke zSeries & Storage h...@suse.de +49 911 74053 688 SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg

Re: [PATCH 13/15] hisi_sas: remove init_id_frame_v1_hw()

2016-09-14 Thread Hannes Reinecke
id_frame_v1_hw() > in start_phy_v1_hw() since it will be used for > PHY reset functions. > > Signed-off-by: John Garry > Signed-off-by: Xiang Chen > --- > drivers/scsi/hisi_sas/hisi_sas_v1_hw.c | 10 -- > 1 file changed, 10 deletions(-) > Reviewed-by: Hannes Re

Re: [PATCH 14/15] hisi_sas: add missing SATA pending device type to v2 hw

2016-09-14 Thread Hannes Reinecke
TA_DEV: > + case SAS_SATA_PENDING: > if (parent_dev && DEV_IS_EXPANDER(parent_dev->dev_type)) > qw0 = HISI_SAS_DEV_TYPE_STP << ITCT_HDR_DEV_TYPE_OFF; > else > Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hannes Reinecke

Re: [PATCH 12/15] hisi_sas: remove init_id_frame_v2_hw()

2016-09-14 Thread Hannes Reinecke
id_frame_v2_hw() > in start_phy_v2_hw() since it will be used for > PHY reset functions. > > Signed-off-by: John Garry > Signed-off-by: Xiang Chen > --- > drivers/scsi/hisi_sas/hisi_sas_v2_hw.c | 10 -- > 1 file changed, 10 deletions(-) > Reviewed-by: Hannes Re

Re: [PATCH 11/15] hisi_sas: fix HBA SAS addr endianness for v1 hw

2016-09-14 Thread Hannes Reinecke
, TX_ID_DWORD4, > - identify_buffer[3]); > + __swab32(identify_buffer[4])); > hisi_sas_phy_write32(hisi_hba, phy_no, TX_ID_DWORD5, > __swab32(identify_buffer[5])); > } > Reviewed-by: Hannes Reinecke Cheers, Hann

Re: [PATCH 10/15] hisi_sas: fix HBA SAS addr endianness for v2 hw

2016-09-14 Thread Hannes Reinecke
; + __swab32(identify_buffer[4])); > hisi_sas_phy_write32(hisi_hba, phy_no, TX_ID_DWORD5, > __swab32(identify_buffer[5])); > } > Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hannes Reinecke zSeries & Stor

Re: [PATCH 09/15] hisi_sas: set dma mask before allocate DMA memory

2016-09-14 Thread Hannes Reinecke
ed-off-by: Xiang Chen > Signed-off-by: John Garry > --- > drivers/scsi/hisi_sas/hisi_sas_main.c | 13 ++--- > 1 file changed, 6 insertions(+), 7 deletions(-) > Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hannes Reinecke zSeries & Storage h...@

Re: [PATCH 08/15] hisi_sas: fix a potential warning for sata disk ejection

2016-09-14 Thread Hannes Reinecke
Xiang Chen > Signed-off-by: John Garry > --- > drivers/scsi/hisi_sas/hisi_sas_main.c | 26 ++---- > 1 file changed, 6 insertions(+), 20 deletions(-) > Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hannes Reinecke zSeries & Storage h...@suse.de

Re: [PATCH 06/15] hisi_sas: disable dlvry queues once at reset for v2 hw

2016-09-14 Thread Hannes Reinecke
ABLE, 0); > > /* Disable all of the PHYs */ > for (i = 0; i < hisi_hba->n_phy; i++) { > Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hannes Reinecke zSeries & Storage h...@suse.de +49 911 74053 688 SUSE LINUX

Re: [PATCH 07/15] hisi_sas: fix phy8 linkrate calculation in phy_up_v2_hw()

2016-09-14 Thread Hannes Reinecke
- link_rate = (link_rate >> (phy_no * 4)) & 0xf; > sas_phy->linkrate = link_rate; > hard_phy_linkrate = hisi_sas_phy_read32(hisi_hba, phy_no, > HARD_PHY_LINKRATE); > Reviewed-by: Hannes Reine

Re: [PATCH 05/15] hisi_sas: use safe BITS_PER_BYTE for slot tag size calculation

2016-09-14 Thread Hannes Reinecke
s = hisi_hba->slot_index_count / BITS_PER_BYTE; > hisi_hba->slot_index_tags = devm_kzalloc(dev, s, GFP_KERNEL); > if (!hisi_hba->slot_index_tags) > goto err_out; > Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hannes Reinecke zSe

Re: [PATCH 04/15] hisi_sas: only zero slot memory when reused

2016-09-14 Thread Hannes Reinecke
sizeof(*slot)); > + /* slot memory is fully zeroed when it is reused */ > } > EXPORT_SYMBOL_GPL(hisi_sas_slot_task_free); > > Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hannes Reinecke zSeries & Storage h...@suse.de +49 911

Re: [RFC][PATCH v1 1/2] libsas: Alloc dynamic work to avoid missing sas events

2016-09-14 Thread Hannes Reinecke
y.c | 50 - > drivers/scsi/libsas/sas_port.c | 23 -- > include/scsi/libsas.h | 8 - > 6 files changed, 66 insertions(+), 84 deletions(-) > Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hannes Reinecke

Re: [PATCH 03/15] hisi_sas: keep CHL_INT2 masked for v2 HW

2016-09-14 Thread Hannes Reinecke
gt;n_phy; i++) { > - hisi_sas_phy_write32(hisi_hba, i, CHL_INT2_MSK, 0x6a); > - hisi_sas_phy_read32(hisi_hba, i, CHL_INT2_MSK); > - } > - > setup_timer(timer, start_phys_v2_hw, (unsigned long)hisi_hba); > mod_timer(timer, jiffies + HZ); &

Re: [PATCH 02/15] hisi_sas: save delivery queue write pointer

2016-09-14 Thread Hannes Reinecke
+--- > 4 files changed, 25 insertions(+), 8 deletions(-) > Reviewed-by: Hannes Reinecke Cheers, Cheers -- Dr. Hannes Reinecke zSeries & Storage h...@suse.de +49 911 74053 688 SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg GF: J. Hawn, J. Guild, F. Imendörffer, HRB 16746 (AG Nürnberg)

Re: [PATCH 01/15] hisi_sas: save completion queue read pointer

2016-09-14 Thread Hannes Reinecke
hn Garry > --- > drivers/scsi/hisi_sas/hisi_sas.h | 1 + > drivers/scsi/hisi_sas/hisi_sas_v1_hw.c | 6 ++ > drivers/scsi/hisi_sas/hisi_sas_v2_hw.c | 5 ++--- > 3 files changed, 5 insertions(+), 7 deletions(-) > Reviewed-by: Hannes Reinecke Cheers, Hannes -- Dr. Hannes

Re: [PATCH V2 00/22] Replace the CFQ I/O Scheduler with BFQ

2016-09-08 Thread Hannes Reinecke
o deadline given nor any repositories to be had where this rewrite could be looked at. Which makes contributing _really_ hard and very frustrating; and I think this indeed would be a suitable topic for KS. Cheers, Hannes -- Dr. Hannes Reinecke zSeries & Storage h...@suse.d

<    1   2   3   4   5   6   7   8   9   10   >