On 01/02/2020 19.53, Philippe Mathieu-Daudé wrote:
On Sat, Feb 1, 2020 at 7:51 PM Thomas Huth <thuth(a)redhat.com>
wrote:
> On 01/02/2020 17.09, Philippe Mathieu-Daudé wrote:
>> On 11/20/19 10:10 AM, Thomas Huth wrote:
>>> It's been deprecated since QEMU v3.1. We've explicitly asked in the
>>> deprecation message that people should speak up on qemu-devel in case
>>> they are still actively using the bluetooth part of QEMU, but nobody
>>> ever replied that they are really still using it.
>>>
>>> I've tried it on my own to use this bluetooth subsystem for one of my
>>> guests, but I was also not able to get it running anymore: When I was
>>> trying to pass-through a real bluetooth device, either the guest did
>>> not see the device at all, or the guest crashed.
>>>
>>> Even worse for the emulated device: When running
>>>
>>> qemu-system-x86_64 -bt device:keyboard
>>>
>>> QEMU crashes once you hit a key.
>>>
>>> So it seems like the bluetooth stack is not only neglected, it is
>>> completely bitrotten, as far as I can tell. The only attention that
>>> this code got during the past years were some CVEs that have been
>>> spotted there. So this code is a burden for the developers, without
>>> any real benefit anymore. Time to remove it.
>>>
>>> Signed-off-by: Thomas Huth <thuth(a)redhat.com>
>>> ---
>>> Makefile.objs | 2 -
>>> bt-host.c | 198 ----
>>> bt-vhci.c | 167 ----
>>> configure | 31 -
>>> hw/Kconfig | 1 -
>>> hw/Makefile.objs | 1 -
>>> hw/bt/Kconfig | 2 -
>>> hw/bt/Makefile.objs | 3 -
>>> hw/bt/core.c | 143 ---
>>> hw/bt/hci-csr.c | 512 ----------
>>> hw/bt/hci.c | 2263 ------------------------------------------
>>> hw/bt/hid.c | 553 -----------
>>> hw/bt/l2cap.c | 1367 -------------------------
>>> hw/bt/sdp.c | 989 ------------------
>>> include/hw/bt.h | 2177 ----------------------------------------
>>> include/sysemu/bt.h | 20 -
>>> qemu-deprecated.texi | 7 -
>>> qemu-options.hx | 79 --
>>> vl.c | 136 ---
>>> 19 files changed, 8651 deletions(-)
>>> delete mode 100644 bt-host.c
>>> delete mode 100644 bt-vhci.c
>>> delete mode 100644 hw/bt/Kconfig
>>> delete mode 100644 hw/bt/Makefile.objs
>>> delete mode 100644 hw/bt/core.c
>>> delete mode 100644 hw/bt/hci-csr.c
>>> delete mode 100644 hw/bt/hci.c
>>> delete mode 100644 hw/bt/hid.c
>>> delete mode 100644 hw/bt/l2cap.c
>>> delete mode 100644 hw/bt/sdp.c
>>> delete mode 100644 include/hw/bt.h
>>> delete mode 100644 include/sysemu/bt.h
>>>
>> [...]> diff --git a/configure b/configure
>>> index 6099be1d84..ecce4ada2d 100755
>>> --- a/configure
>>> +++ b/configure
>>> @@ -349,7 +349,6 @@ unset target_list_exclude
>>> # Distributions want to ensure that several features are compiled in, and
it
>>> # is impossible without a --enable-foo that exits if a feature is not
found.
>>>
>>> -bluez=""
>>> brlapi=""
>>> curl=""
>>> curses=""
>>> @@ -1151,10 +1150,6 @@ for opt do
>>> ;;
>>> --enable-brlapi) brlapi="yes"
>>> ;;
>>> - --disable-bluez) bluez="no"
>>> - ;;
>>> - --enable-bluez) bluez="yes"
>>> - ;;
>>
>> Now than I'm bisecting over this commit, I realize removing this
>> option was not a good idea, we should have done like commit
>> cb6414dfec8 or 315d3184525:
>>
>> @@ -886,10 +885,6 @@ for opt do
>> - --disable-uuid) uuid="no"
>> - ;;
>> - --enable-uuid) uuid="yes"
>> - ;;
>> ...
>> + --enable-uuid|--disable-uuid)
>> + echo "$0: $opt is obsolete, UUID support is always built"
>&2
>> + ;;
>
> Looks trivial ... so if it bugs you, just send a patch?
I thought about it but this won't fix much, it is too late now.
I simply wanted to share this bugged me so we try to avoid doing the
same mistake again.
Makes sense. I'll try to remember it for the future.
Thomas