ide: remove hardcoded 2GiB transactional limit
commit9fbf0fa81fca8f527669dd4fa72662d66e7d6329
authorJohn Snow <jsnow@redhat.com>
Fri, 6 Nov 2015 19:09:00 +0000 (6 14:09 -0500)
committerJohn Snow <jsnow@redhat.com>
Fri, 6 Nov 2015 19:09:00 +0000 (6 14:09 -0500)
treef24a3794f9948bebc23ee7b06264de6fb3b186bc
parent4b59f39bc9a03afcc74b2fa28da7c3189fca507c
ide: remove hardcoded 2GiB transactional limit

Not that you can request a >2GiB transaction, but that's why checking
for it makes no sense anymore.

With the newer 'limit' parameter to prepare_buf, we no longer need a
static limit. The maximum limit is still 2GiB, but the limit parameter
is set to the current transaction size, which cannot surpass 32MiB
(512 * 65536). If the PRDT surpasses the transactional size, then,
we'll just carry out the normative underflow handling pathways instead
of needing an extra, strange pathway that worries about hitting some
logistical cap for the largest sglist we can support -- we'll never
even attempt to build one that big anymore.

Reported-by: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: John Snow <jsnow@redhat.com>
Acked-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-id: 1445902682-20051-1-git-send-email-jsnow@redhat.com
hw/ide/ahci.c
hw/ide/internal.h
hw/ide/pci.c