Greetins

My code is this (only I copy and paste from example dir)

**magma_d_mtransfer(A_h, &A_d, Magma_CPU, Magma_DEV, queue);**

magma_d_mtransfer(b_h, &b_d, Magma_CPU, Magma_DEV, queue);

magma_d_mtransfer(x_h, &x_d, Magma_CPU, Magma_DEV, queue);

// Choose a solver, preconditioner, etc. - see documentation for options.

opts.solver_par.solver = Magma_PBICGSTAB; // _PIDRMERGE _PBICGSTAB _PGMRES

// opts.solver_par.restart = 10;

opts.solver_par.maxiter = 1000;

opts.solver_par.rtol = tolerance_press;

opts.precond_par.solver = Magma_ILU;

// opts.precond_par.maxiter = 1000;

opts.precond_par.levels = 0;

opts.precond_par.trisolver = Magma_CUSOLVE;

// Initialize the solver.

magma_dsolverinfo_init( &opts.solver_par, &opts.precond_par, queue );

magma_d_precondsetup( A_d, b_d, &opts.solver_par, &opts.precond_par, queue );

// My code crashes here, there is a segmentation fault :(

magma_d_solver( A_d, b_d, &x_d, &opts, queue );

magma_d_mtransfer( x_d, &x_h, Magma_DEV, Magma_CPU, queue );

// and back to the application code

magma_dvget( x_h, &m, &n, &deltaPV, queue );

magma_dsolverinfo_free( &opts.solver_par, &opts.precond_par, queue );

magma_d_mfree( &x_d, queue );

magma_d_mfree( &b_d, queue );

magma_d_mfree( &A_d, queue );

magma_d_mtransfer(b_h, &b_d, Magma_CPU, Magma_DEV, queue);

magma_d_mtransfer(x_h, &x_d, Magma_CPU, Magma_DEV, queue);

// Choose a solver, preconditioner, etc. - see documentation for options.

opts.solver_par.solver = Magma_PBICGSTAB; // _PIDRMERGE _PBICGSTAB _PGMRES

// opts.solver_par.restart = 10;

opts.solver_par.maxiter = 1000;

opts.solver_par.rtol = tolerance_press;

opts.precond_par.solver = Magma_ILU;

// opts.precond_par.maxiter = 1000;

opts.precond_par.levels = 0;

opts.precond_par.trisolver = Magma_CUSOLVE;

// Initialize the solver.

magma_dsolverinfo_init( &opts.solver_par, &opts.precond_par, queue );

magma_d_precondsetup( A_d, b_d, &opts.solver_par, &opts.precond_par, queue );

// My code crashes here, there is a segmentation fault :(

magma_d_solver( A_d, b_d, &x_d, &opts, queue );

magma_d_mtransfer( x_d, &x_h, Magma_DEV, Magma_CPU, queue );

// and back to the application code

magma_dvget( x_h, &m, &n, &deltaPV, queue );

magma_dsolverinfo_free( &opts.solver_par, &opts.precond_par, queue );

magma_d_mfree( &x_d, queue );

magma_d_mfree( &b_d, queue );

magma_d_mfree( &A_d, queue );