- ieee1394-ieee1394-save-ram-by-using-a-single.patch removed from -mm tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The patch titled

     ieee1394: save RAM by using a single tlabel for broadcast transactions

has been removed from the -mm tree.  Its filename is

     ieee1394-ieee1394-save-ram-by-using-a-single.patch

This patch was dropped because it was merged into mainline or a subsystem tree

------------------------------------------------------
Subject: ieee1394: save RAM by using a single tlabel for broadcast transactions
From: Stefan Richter <stefanr@xxxxxxxxxxxxxxxxx>


Since broadcast transactions are already complete when the request has
been sent, the same transaction label can be reused all over again, see
IEEE 1394 7.3.2.5 and 6.2.4.3.  Therefore we can reduce the footprint
of struct hpsb_host by the size of one struct hpsb_tlabel_pool.

Signed-off-by: Stefan Richter <stefanr@xxxxxxxxxxxxxxxxx>
Cc: Jody McIntyre <scjody@xxxxxxxxxxxxxx>
Cc: Ben Collins <bcollins@xxxxxxxxxx>
Signed-off-by: Andrew Morton <akpm@xxxxxxxx>
---

 drivers/ieee1394/hosts.h                 |   18 +++++++++---------
 drivers/ieee1394/ieee1394_transactions.c |   10 ++++++++--
 2 files changed, 17 insertions(+), 11 deletions(-)

diff -puN drivers/ieee1394/hosts.h~ieee1394-ieee1394-save-ram-by-using-a-single drivers/ieee1394/hosts.h
--- 25/drivers/ieee1394/hosts.h~ieee1394-ieee1394-save-ram-by-using-a-single	Fri Jun  2 14:43:53 2006
+++ 25-akpm/drivers/ieee1394/hosts.h	Fri Jun  2 14:43:53 2006
@@ -30,14 +30,14 @@ struct hpsb_host {
 
 	unsigned char iso_listen_count[64];
 
-	int node_count;     /* number of identified nodes on this bus */
-	int selfid_count;   /* total number of SelfIDs received */
-	int nodes_active;   /* number of nodes with active link layer */
-	u8 speed[63];       /* speed between each node and local node */
-
-	nodeid_t node_id;   /* node ID of this host */
-	nodeid_t irm_id;    /* ID of this bus' isochronous resource manager */
-	nodeid_t busmgr_id; /* ID of this bus' bus manager */
+	int node_count;      /* number of identified nodes on this bus */
+	int selfid_count;    /* total number of SelfIDs received */
+	int nodes_active;    /* number of nodes with active link layer */
+	u8 speed[ALL_NODES]; /* speed between each node and local node */
+
+	nodeid_t node_id;    /* node ID of this host */
+	nodeid_t irm_id;     /* ID of this bus' isochronous resource manager */
+	nodeid_t busmgr_id;  /* ID of this bus' bus manager */
 
 	/* this nodes state */
 	unsigned in_bus_reset:1;
@@ -56,7 +56,7 @@ struct hpsb_host {
 	struct csr_control csr;
 
 	/* Per node tlabel pool allocation */
-	struct hpsb_tlabel_pool tpool[64];
+	struct hpsb_tlabel_pool tpool[ALL_NODES];
 
 	struct hpsb_host_driver *driver;
 
diff -puN drivers/ieee1394/ieee1394_transactions.c~ieee1394-ieee1394-save-ram-by-using-a-single drivers/ieee1394/ieee1394_transactions.c
--- 25/drivers/ieee1394/ieee1394_transactions.c~ieee1394-ieee1394-save-ram-by-using-a-single	Fri Jun  2 14:43:53 2006
+++ 25-akpm/drivers/ieee1394/ieee1394_transactions.c	Fri Jun  2 14:43:53 2006
@@ -136,8 +136,11 @@ int hpsb_get_tlabel(struct hpsb_packet *
 {
 	unsigned long flags;
 	struct hpsb_tlabel_pool *tp;
+	int n = NODEID_TO_NODE(packet->node_id);
 
-	tp = &packet->host->tpool[packet->node_id & NODE_MASK];
+	if (unlikely(n == ALL_NODES))
+		return 0;
+	tp = &packet->host->tpool[n];
 
 	if (irqs_disabled() || in_atomic()) {
 		if (down_trylock(&tp->count))
@@ -175,8 +178,11 @@ void hpsb_free_tlabel(struct hpsb_packet
 {
 	unsigned long flags;
 	struct hpsb_tlabel_pool *tp;
+	int n = NODEID_TO_NODE(packet->node_id);
 
-	tp = &packet->host->tpool[packet->node_id & NODE_MASK];
+	if (unlikely(n == ALL_NODES))
+		return;
+	tp = &packet->host->tpool[n];
 
 	BUG_ON(packet->tlabel > 63 || packet->tlabel < 0);
 
_

Patches currently in -mm which might be from stefanr@xxxxxxxxxxxxxxxxx are

git-ieee1394.patch
lock-validator-annotate-ieee1394-skb-head-locking.patch

-
To unsubscribe from this list: send the line "unsubscribe mm-commits" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Kernel Newbies FAQ]     [Kernel Archive]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [Bugtraq]     [Photo]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]

  Powered by Linux