diff options
author | Avik Sil <aviksil@linux.vnet.ibm.com> | 2013-10-04 11:32:22 +0530 |
---|---|---|
committer | Nikunj A Dadhania <nikunj@linux.vnet.ibm.com> | 2013-10-04 12:01:21 +0530 |
commit | b30e4a4f8aaaa6b9dd12bbab3ec908e0d3cc3851 (patch) | |
tree | 5ce889ad311195b5810b00cc9dcc07cc29e325aa /board-qemu/slof/e1k.fs | |
parent | ab29e16279f52602870c56b00149524a2114bb1f (diff) | |
download | SLOF-b30e4a4f8aaaa6b9dd12bbab3ec908e0d3cc3851.zip SLOF-b30e4a4f8aaaa6b9dd12bbab3ec908e0d3cc3851.tar.gz SLOF-b30e4a4f8aaaa6b9dd12bbab3ec908e0d3cc3851.tar.bz2 |
Allow more than one client to open net devices simultaneously
When multiple clients are active simultaneously, they might open network
devices that is already opened by other clients. This results in failure
to transfer packets since obp-tftp package is not instantiated on each open.
This patch resolves it by instantiating obp-tftp on each open.
Signed-off-by: Avik Sil <aviksil@linux.vnet.ibm.com>
Signed-off-by: Nikunj A Dadhania <nikunj@linux.vnet.ibm.com>
Diffstat (limited to 'board-qemu/slof/e1k.fs')
-rw-r--r-- | board-qemu/slof/e1k.fs | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/board-qemu/slof/e1k.fs b/board-qemu/slof/e1k.fs index 7b8e8e6..1f2b192 100644 --- a/board-qemu/slof/e1k.fs +++ b/board-qemu/slof/e1k.fs @@ -22,7 +22,6 @@ INSTANCE VARIABLE obp-tftp-package : open ( -- okay? ) open-count 0= IF open IF - my-args s" obp-tftp" $open-package obp-tftp-package ! e1k-open dup not IF ." e1k-open failed" EXIT THEN drop TO e1k-priv true @@ -32,19 +31,20 @@ INSTANCE VARIABLE obp-tftp-package ELSE true THEN + my-args s" obp-tftp" $open-package obp-tftp-package ! open-count 1 + to open-count ; : close ( -- ) - open-count 0> IF + open-count 0> IF open-count 1 - dup to open-count 0= IF - s" close" obp-tftp-package @ $call-method e1k-priv e1k-close close THEN THEN + s" close" obp-tftp-package @ $call-method ; : read ( buf len -- actual ) |