Базовый класс в этом смысле используется как перечень обязательных методов в наследникахНо это не отменяет содержания виртуальной таблицы в нём, включая виртуальный деструктор.
При использовании в проекте наследников от базового класса импорт vbase destructor не имеет смыслаКак это не имеет? Вы имеете право скастовать наследника к предку и удалить его через этот указатель, что приведёт к динамической диспетчеризации и вызову цепочки соответствующих деструкторов. Последним обязательно вызовется деструктор базового класса, даже если он невиртуальный (хотя это leak!).
Это конструктор без параметров в классе, в котором не описан конструктор без параметровЭто конструктор с default-параметрами, которые вполне могут быть NonTrivial. Соответственно, для них нужно будет вызвать недефолтный конструктор, для вызова которого и предназначено это замыкание.
При переходе от Nouveau к nvidia и наборот нужно перезагружаться. Насколько я понял, модуль дров видекарты не может быть просто так выгружен и загружен другойВ линуксе практически любой модуль может быть выгружен без перезагрузки. По инету миллион скриптов валяется для хотсвапа между блобом и нувой.
sudo
и понеслась по кочкам...
А ещё у вас UB, когда вызываете placement new на невыровненный массив байтов, а у структуры Buffer выравнивание никак не 1.