All of lore.kernel.org
 help / color / mirror / Atom feed
From: frank.blaschka@de.ibm.com
To: davem@davemloft.net
Cc: netdev@vger.kernel.org, linux-s390@vger.kernel.org,
	Einar Lueck <elelueck@de.ibm.com>,
	Jan Glauber <jang@linux.vnet.ibm.com>
Subject: [patch 10/13] [PATCH] qdio: support forced signal adapter indications
Date: Mon, 08 Aug 2011 13:33:56 +0200	[thread overview]
Message-ID: <20110808113516.358415131@de.ibm.com> (raw)
In-Reply-To: 20110808113346.516293249@de.ibm.com

[-- Attachment #1: net1117_qdio_siga_r.patch --]
[-- Type: text/plain, Size: 2356 bytes --]

This patch ensures that signal adapter commands are issued if they are 
indicated to be required.

Signed-off-by: Einar Lueck <elelueck@de.ibm.com>
Signed-off-by: Jan Glauber <jang@linux.vnet.ibm.com>
Signed-off-by: Frank Blaschka <frank.blaschka@de.ibm.com>
---
 arch/s390/include/asm/qdio.h |   10 ++++++++++
 drivers/s390/cio/qdio.h      |    9 ---------
 drivers/s390/cio/qdio_main.c |    5 +----
 3 files changed, 11 insertions(+), 13 deletions(-)

--- a/arch/s390/include/asm/qdio.h
+++ b/arch/s390/include/asm/qdio.h
@@ -279,6 +279,16 @@ struct qdio_outbuf_state {
 
 #define CHSC_AC1_INITIATE_INPUTQ	0x80
 
+
+/* qdio adapter-characteristics-1 flag */
+#define AC1_SIGA_INPUT_NEEDED		0x40	/* process input queues */
+#define AC1_SIGA_OUTPUT_NEEDED		0x20	/* process output queues */
+#define AC1_SIGA_SYNC_NEEDED		0x10	/* ask hypervisor to sync */
+#define AC1_AUTOMATIC_SYNC_ON_THININT	0x08	/* set by hypervisor */
+#define AC1_AUTOMATIC_SYNC_ON_OUT_PCI	0x04	/* set by hypervisor */
+#define AC1_SC_QEBSM_AVAILABLE		0x02	/* available for subchannel */
+#define AC1_SC_QEBSM_ENABLED		0x01	/* enabled for subchannel */
+
 #define CHSC_AC2_DATA_DIV_AVAILABLE	0x0010
 #define CHSC_AC2_DATA_DIV_ENABLED	0x0002
 
--- a/drivers/s390/cio/qdio.h
+++ b/drivers/s390/cio/qdio.h
@@ -87,15 +87,6 @@ enum qdio_irq_states {
 #define CHSC_FLAG_QDIO_CAPABILITY	0x80
 #define CHSC_FLAG_VALIDITY		0x40
 
-/* qdio adapter-characteristics-1 flag */
-#define AC1_SIGA_INPUT_NEEDED		0x40	/* process input queues */
-#define AC1_SIGA_OUTPUT_NEEDED		0x20	/* process output queues */
-#define AC1_SIGA_SYNC_NEEDED		0x10	/* ask hypervisor to sync */
-#define AC1_AUTOMATIC_SYNC_ON_THININT	0x08	/* set by hypervisor */
-#define AC1_AUTOMATIC_SYNC_ON_OUT_PCI	0x04	/* set by hypervisor */
-#define AC1_SC_QEBSM_AVAILABLE		0x02	/* available for subchannel */
-#define AC1_SC_QEBSM_ENABLED		0x01	/* enabled for subchannel */
-
 /* SIGA flags */
 #define QDIO_SIGA_WRITE		0x00
 #define QDIO_SIGA_READ		0x01
--- a/drivers/s390/cio/qdio_main.c
+++ b/drivers/s390/cio/qdio_main.c
@@ -1592,12 +1592,9 @@ set:
 	used = atomic_add_return(count, &q->nr_buf_used) - count;
 	BUG_ON(used + count > QDIO_MAX_BUFFERS_PER_Q);
 
-	/* no need to signal as long as the adapter had free buffers */
-	if (used)
-		return 0;
-
 	if (need_siga_in(q))
 		return qdio_siga_input(q);
+
 	return 0;
 }
 

  parent reply	other threads:[~2011-08-08 11:33 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-08-08 11:33 [patch 00/13] s390: network patches for net-next frank.blaschka
2011-08-08 11:33 ` [patch 01/13] [PATCH] qeth: l3 ipv6 vlan not working on shared OSA chpid frank.blaschka
2011-08-08 11:33 ` [patch 02/13] [PATCH] qeth: do not apply priority queuing to HiperSockets frank.blaschka
2011-08-08 11:33 ` [patch 03/13] [PATCH] iucv: introduce loadable iucv interface frank.blaschka
2011-08-08 11:33 ` [patch 04/13] [PATCH] iucv: kernel option for z/VM IUCV and HiperSockets frank.blaschka
2011-08-08 11:33 ` [patch 05/13] [PATCH] af_iucv: use loadable iucv interface frank.blaschka
2011-08-08 11:33 ` [patch 06/13] [PATCH] af_iucv: cleanup - use iucv_sk(sk) early frank.blaschka
2011-08-08 11:33 ` [patch 07/13] [PATCH] if_ether: add new Ethernet Protocol ID for af_iucv frank.blaschka
2011-08-08 11:33 ` [patch 08/13] [PATCH] af_iucv: add HiperSockets transport frank.blaschka
2011-08-08 11:33 ` [patch 09/13] [PATCH] qdio: support asynchronous delivery of storage blocks frank.blaschka
2011-08-08 11:33 ` frank.blaschka [this message]
2011-08-08 11:33 ` [patch 11/13] [PATCH] qeth: support forced signal adapter indications frank.blaschka
2011-08-08 11:33 ` [patch 12/13] [PATCH] qeth: exploit asynchronous delivery of storage blocks frank.blaschka
2011-08-08 11:33 ` [patch 13/13] [PATCH] qeth: add support for af_iucv HiperSockets transport frank.blaschka
2011-08-13  8:10 ` [patch 00/13] s390: network patches for net-next David Miller

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20110808113516.358415131@de.ibm.com \
    --to=frank.blaschka@de.ibm.com \
    --cc=davem@davemloft.net \
    --cc=elelueck@de.ibm.com \
    --cc=jang@linux.vnet.ibm.com \
    --cc=linux-s390@vger.kernel.org \
    --cc=netdev@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.