[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] xen/vcpu: remove vcpu_set_singleshot_timer flags field
- To: Roger Pau Monne <roger.pau@xxxxxxxxxx>, xen-devel@xxxxxxxxxxxxxxxxxxxx
- From: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
- Date: Tue, 18 Apr 2023 16:54:49 +0100
- Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none
- Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=tcPbJuOJMLDO1T3Gj0DzKmnUAlE+EEb0FngBro3YOgM=; b=kqBkR8PjYI4LZD9rYUREiF+2zpAogvfZR/p8HZU2LrduXR4P2RbuYHqFYPZfCRt9vtOJ2FNO6/SoT2EC33qmhzOBjITgQLxJkVoOro6BjitE/h6SsCZN4GcmUxxvcJsdVohcwgAgPJHpAFXS3/a/D8AIMzEBu9Y0zB4wFUZ1SlswxT2buevuvqYgIxgGMX2leOJl8vc8Gv7T+03ceFi7dghwerui41U4JgMQYgq8aYL4h4gjwgcANR7FEfmoRLwoKvDeOWfnMA8TGUkVtEvveffA8rEOfDHrJ1MS/kfLpMrCMIz1RWpAH83DjiLuF9qUn9gZWd9x4/apclKnXjzcAQ==
- Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=M3OdhvvuCbEpKbUBK8RozxDt279oN0lrSZ/pqYpuw0c82MBScP5X3eRF2aGgKj4mf4Jvul1tvwOWfpALhHUO+SYW6jPkXlXhC8ZGy4hIRnRsgKDV9lFcbfTwtfvwcV3GJvDuzlBhw59LbftaI3M8N/T87+CYqFrclUAM30A77L18Pa5WB55jMGxnVy+whZKdfW7lkvhvrR1srRG6v5KmxXfD/bbUYDQQ8nXCwAXgEoJnlkc7wRzjm4sVLZz5zFvaGOjUm1HENfBV5QF0BryfMY1ukj/f7gvohDGe5V7KUi82TJggE7Tsi55I2MqdCIDF08/kxW/X1p5OzZ8SaPbJxw==
- Authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com;
- Cc: Henry Wang <Henry.Wang@xxxxxxx>, Community Manager <community.manager@xxxxxxxxxxxxxx>, George Dunlap <george.dunlap@xxxxxxxxxx>, Jan Beulich <jbeulich@xxxxxxxx>, Julien Grall <julien@xxxxxxx>, Stefano Stabellini <sstabellini@xxxxxxxxxx>, Wei Liu <wl@xxxxxxx>
- Delivery-date: Tue, 18 Apr 2023 15:55:29 +0000
- Ironport-data: A9a23:8Kw5S6LhfI0DDYLzFE+RUpQlxSXFcZb7ZxGr2PjKsXjdYENS12cOx jEbDT2PaKyKZDHzLdt/bd7noUwBvZeAmoViQQJlqX01Q3x08seUXt7xwmUcnc+xBpaaEB84t ZV2hv3odp1coqr0/0/1WlTZhSAgk/rOHvykU7Ss1hlZHWdMUD0mhQ9oh9k3i4tphcnRKw6Ws Jb5rta31GWNglaYCUpJrfPSwP9TlK6q4mhA4gVuPaojUGL2zBH5MrpOfcldEFOgKmVkNrbSb /rOyri/4lTY838FYj9yuu+mGqGiaue60Tmm0hK6aYD76vRxjnVaPpIAHOgdcS9qZwChxLid/ jnvWauYEm/FNoWU8AgUvoIx/ytWZcWq85efSZSzXFD6I+QrvBIAzt03ZHzaM7H09c59RnkQ8 KQceQwLazefp+68766eW9ZF05FLwMnDZOvzu1lG5BSAV7MMZ8CGRK/Ho9hFwD03m8ZCW+7EY NYUYiZuaxKGZABTPlAQC9Q1m+LAanvXKmUE7g7K4/dqpTGMkWSd05C0WDbRUvWMSd9YgQCzo WXe8n6iKhobKMae2XyO9XfEaurnxHumCN1DSOHmnhJsqAGDwUBIUzw1b3Thr+v+sHGSV9tgG UNBr0LCqoB3riRHVOLVTxC+5XKJoBMYc95RCPEhrhGAzLLO5ASUDXRCSSROAPQGucksVHoV3 1mGt9rzAHpkt7j9YXma87KJqzKuKG4QJGkLaiIeZRsI5cH5p4M+hQ6JScxseIa3hNDoHTD7w xiRsTMzwb4UiKYj1bi//F3BqyKhoN7OVAFdzh7MQmuv4wd9ZYikT4+l817W6bBHNonxZkaFl GgJnY6Z9u9mMH2WvCmEQeFIFrf54f+AaWfYmQQ2QMRn8Cmx8Xm+e4wW+Ct5OEpiLscDf3nuf VPXvgRSopRUORNGcJNKXm54MOxypYCIKDgvfqu8ggZmCnSpSDK6wQ==
- Ironport-hdrordr: A9a23:ldI/Q6CCHF++z5TlHemU55DYdb4zR+YMi2TDtnoBLyC9Hfb4qy nDppQmPHzP+VEssRMb6LW90cC7KBu2n/MYjucs1NGZLWrbUQCTXeVfBOXZsl/d8/GXzJ8h6U 4aSdkGNDQ1NykD/L2KmnjFL+od
- List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
On 18/04/2023 4:42 pm, Roger Pau Monne wrote:
> The addition of the flags field in the vcpu_set_singleshot_timer in
> 505ef3ea8687 is an ABI breakage, as the size of the structure is
> increased.
>
> Remove such field addition and drop the implementation of the
> VCPU_SSHOTTMR_future flag. If a timer provides an expired timeout
> value just inject the timer interrupt.
>
> Bump the Xen interface version, and keep the flags field and
> VCPU_SSHOTTMR_future available for guests using the old interface.
>
> Note the removal of the field from the vcpu_set_singleshot_timer
> struct allows removing the compat translation of the struct.
>
> Fixes: 505ef3ea8687 ('Add flags field to VCPUOP_set_singlsehot_timer.')
> Reported-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
> Signed-off-by: Roger Pau Monné <roger.pau@xxxxxxxxxx>
While everything said is true, this isn't the reason to to get rid of
VCPU_SSHOTTMR_future
It 505ef3ea8687 does appear to have been an ABI break, that's
incidental. It dates from 2007 so whatever we have now is the de-facto
ABI, whether we like it or not.
The reason to delete this is because it is a monumentality and entirely
stupid idea which should have been rejected outright at the time, and
the only guest we can find which uses it also BUG_ON()'s in response to
-ETIME.
It can literally only be used to shoot yourself in the foot with, and
more recent Linuxes have dropped their use of it.
The structure needs to stay it's current shape, and while it's fine to
hide the VCPU_SSHOTTMR_future behind an interface version macro, we do
need to say that it is explicitly ignored.
~Andrew
|